数据库原理第2讲_第1页
数据库原理第2讲_第2页
数据库原理第2讲_第3页
数据库原理第2讲_第4页
数据库原理第2讲_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数据库系统概论AnIntroductiontoDatabaseSystem第二讲数据模型概念模型的基本概念E-R方法.数据模型在数据库中用数据模型这个工具来抽象、表示和处理现实世界中的数据和信息。.数据模型(续)数据模型分成两个不同的层次(1)概念模型也称信息模型,它是按用户的观点来对数据和信息建模。(2)DBMS支持的数据模型主要包括网状模型、层次模型、关系模型等,它是按计算机系统的观点对数据建模。.数据模型(续)客观对象的抽象过程---两步抽象(1)现实世界中的客观对象抽象为概念模型;(2)把概念模型转换为某一DBMS支持的数据模型。.1.2.1数据模型的组成要素数据结构数据操作数据的约束条件.1.数据结构什么是数据结构对象类型的集合两类对象与数据类型、内容、性质有关的对象与数据之间联系有关的对象数据结构是对系统静态特性的描述.2.数据操作数据操作对数据库中各种对象(型)的实例(值)允许执行的操作及有关的操作规则数据操作的类型检索更新(包括插入、删除、修改)数据操作是对系统动态特性的描述。.3.数据的约束条件数据的约束条件一组完整性规则的集合。.1.2.2概念模型1.概念模型2.信息世界中的基本概念3.概念模型的表示方法.1.概念模型概念模型的用途是数据库设计的有力工具数据库设计人员和用户之间进行交流的语言.2.信息世界中的基本概念

(1)实体(Entity)客观存在并可相互区别的事物称为实体。可以是具体的人、事、物或抽象的概念。(2)属性(Attribute)实体所具有的某一特性称为属性。一个实体可以由若干个属性来描述。其中的某一部分属性集可以惟一地标志实体。

(3)码(实体标识属性,Key)唯一标识实体的属性集称为码。

.信息世界中的基本概念(续)(4)域(Domain)属性的取值范围称为该属性的域。

(5)实体型(EntityType)用实体名及其属性名集合来抽象和刻画同类实体称为实体型(6)实体集(EntitySet)同型实体的集合称为实体集.信息世界中的基本概念(续)(7)联系(Relationship)现实世界中事物内部以及事物之间的联系在信息世界中反映为实体内部的联系和实体之间的联系实体型间联系两个实体型一对一联系(1:1)三个实体型一对多联系(1:n)一个实体型多对多联系(m:n)

二元联系.书架图书读者一位读者可借阅多本图书一本图书可借给多位读者一本图书只能放在一个书架一个书架可放多本图书实体之间的联系有一对一(1:1)、一对多(1:m),及多对多(m:n)的联系多对多(m:n)的联系多对一(m:1)的联系示例:实体之间的联系两个实体型间的联系一对一联系如果对于实体集A中的每一个实体,实体集B中至多有一个实体与之联系,反之亦然,则称实体集A与实体集B具有一对一联系。记为1:1。

实例班级与班长之间的联系:一个班级只有一个正班长一个班长只在一个班中任职.两个实体型间的联系(续)一对多联系如果对于实体集A中的每一个实体,实体集B中有n个实体(n≥0)与之联系,反之,对于实体集B中的每一个实体,实体集A中至多只有一个实体与之联系,则称实体集A与实体集B有一对多联系记为1:n实例班级与学生之间的联系:一个班级中有若干名学生,每个学生只在一个班级中学习.两个实体型间的联系(续)多对多联系(m:n)如果对于实体集A中的每一个实体,实体集B中有n个实体(n≥0)与之联系,反之,对于实体集B中的每一个实体,实体集A中也有m个实体(m≥0)与之联系,则称实体集A与实体B具有多对多联系。记为m:n实例课程与学生之间的联系:一门课程同时有若干个学生选修一个学生可以同时选修多门课程.多个实体型间的联系(续)多个实体型间的一对多联系若实体集E1,E2,...,En存在联系,对于实体集Ej(j=1,2,...,i-1,i+1,...,n)中的给定实体,最多只和Ei中的一个实体相联系,则我们说Ei与E1,E2,...,Ei-1,Ei+1,...,En之间的联系是一对多的。.多个实体型间的联系(续)实例

课程、教师与参考书三个实体型如果一门课程可以有若干个教师讲授,使用若干本参考书,每一个教师只讲授一门课程,每一本参考书只供一门课程使用课程与教师、参考书之间的联系是一对多的多个实体型间的一对一联系多个实体型间的多对多联系.同一实体集内各实体间的联系一对多联系实例

职工实体集内部具有领导与被领导的联系某一职工(干部)“领导”若干名职工一个职工仅被另外一个职工直接领导这是一对多的联系一对一联系多对多联系.3.概念模型的表示方法概念模型的表示方法很多实体-联系方法(E-R方法)用E-R图来描述现实世界的概念模型E-R方法也称为E-R模型.语义对象模型DEPARTMENTIDDeptName1.1ChairpersonPhoneNumberTotalMajorsCampusAddress Building1.1 OfficeNumber1.1STUDENTPROFESSOR1.N1.NSTUDENTIDStudentName1.1IDStudentNumber1.1PhoneNumberDEPARTMENT1.1.E-R图实体型用矩形表示,矩形框内写明实体名。学生教师.E-R图(续)属性用椭圆形表示,并用无向边将其与相应的实体连接起来属性分类:简单属性和组合属性;单值属性和多值属性。学生学号年龄性别姓名.实体标志属性.组合属性.CardinalityofAttributes.E-R图(续)联系联系本身:用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1:1、1:n或m:n)联系的属性:联系本身也是一种实体型,也可以有属性。如果一个联系具有属性,则这些属性也要用无向边与该联系连接起来

.联系的表示方法实体型1联系名实体型2111:1联系实体型1联系名实体型2mnm:n联系实体型1联系名实体型21n1:n联系.联系的表示方法(续)实体型1联系名mn同一实体型内部的m:n联系实体型1联系名实体型21m多个实体型间的1:n联系实体型3n.联系的表示方法示例班级班级-班长班长111:1联系课程选修学生mnm:n联系班级组成学生1n1:n联系.联系的表示方法示例(续)职工领导1n同一实体型内部的1:n联系课程讲授教师1m多个实体型间的1:n联系参考书n.联系属性的表示方法课程选修学生mn成绩.其他E-R概念弱实体一种特殊类型的实体,这种实体在数据库在的存在依赖于其它实体的存在情况。子类实体一个一般化实体(超类实体)可以分解成低层次的子类实体。泛化层次(泛化体系,IS-A联系)继承,子类中实体继承了超类实体的属性。.弱实体.弱实体(续).建立E-R模型实体确定潜在的实体。实体通常由需求分析文档中的名词表达(如地点、人物、概念、事件、设备等)。联系(通常是动词表达)得到最终的E-R图评价E-R数据模型.E-R设计要注意的几个问题选择正确的元素种类实体还是属性?

若某个概念是原子性的,不可再分,并且与其他实体之间不存在联系,一般作属性处理实体还是联系?(CAP数据库中的orders是实体还是联系?)选择正确的联系类型(二元联系还是多元联系?)FatherMotherChildparent11nfather-childChildmother-childFatherMother11nn.E-R图(续)E-R图实例:

P19-P20

某工厂物资管理E-R图.供应商零件项目仓库职工1n领导工作1n库存mn供应mnp姓名地址帐号电话号供应商号电话号面积仓库号职称姓名职工号年龄名称规格描述单价零件号开工日期项目预算项目号供应量库存量示例6.2:实体-联系图示例.图书书架读者借阅保存1mmn书架号房间书号书名出版日期出版社姓名年龄性别家庭住址借书证号借阅日期归还日期示例6.3:实体-联系图示例.综合设计题某研究所要对科研项目进行计算机管理。该研究所有若干科研人员,每个人有职工号、姓名、性别、专业、研究方向、所在办公室等。每个科研项目的信息包括研究项目、名称、起始时间和完成时间、经费、来源、负责人、参加项目的每个人员所承担的任务等信息。该研究所规定,一个科研项目可以有多名科研人员参加,一个科研人员也可以参加多个研究项目。每个项目由一个科研人员负责,一个科研人员可以负责多个项目。每个办公室有房间编号、面积和办公电话,一个办公室可以有多个科研人员办公,一个科研人员只能在一个办公室办公。1.根据上述语义设计此数据库应用系统的E-R模型,在E-R图中需注明实体的属性、联系的类型及实体的标识属性。2.将E-R图转换成关系模型,并指出每个关系模式的主关键字和外关键字(如果存在)。.参考答案E-R设计科研项目科研人员办公室项目编号项目名称起始时间完成时间经费额来源职工号姓名性别专业研究方向任务参与负责mnn1办公电话房间编号面积办公1n.E-R图转换为等价的关系模型表示的数据库逻辑结构如下:关系模型:

科研项目(项目编号,名称,起始时间,完成时间,经费,来源,负责人)

科研人员(职工号,姓名,性别,专业,研究方向,所在办公室)

办公室(房间编号、面积,办公电话)(2分)

研究(项目编号,职工号,任务)表名主关键字外关键字项目编号研究项目负责人科研人员职工号所在办公室办公室房间编号无参与(项目编号,职工号)项目编号职工号.表(Table)/关系(Relation)值域(Domain)列数据的取值范围981101数据库01张三100981101数据库02张四90981101数据库03张五80981101计算机01张三89981101计算机02张四98981101计算机03张五72981102数据库01王三30981102数据库02王四90981102数据库03王武78学生成绩单班级课程学号姓名成绩关系模式学生成绩单(班级,课程,学号,姓名,成绩)列(Column)/字段(Field)/属性(Attribute)/数据项列有名称,有值/数据码(Key)/关键字某一列或某几列的数据能惟一区分开每一行班级课程学号行(Row)/元组(Tuple)/记录(Record)返回Database={table1,table2,…,tableN}Head(tableI)={attribute1,attribute2,…,attributeM}=attribute1attribute2…attribu

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论