第三章ER数据模型.ppt

上传人:ga****84 文档编号:457835 上传时间:2018-10-09 格式:PPT 页数:23 大小:103KB
下载 相关 举报
第三章ER数据模型.ppt_第1页
第1页 / 共23页
第三章ER数据模型.ppt_第2页
第2页 / 共23页
第三章ER数据模型.ppt_第3页
第3页 / 共23页
第三章ER数据模型.ppt_第4页
第4页 / 共23页
第三章ER数据模型.ppt_第5页
第5页 / 共23页
点击查看更多>>
资源描述

1、第三章 ER 数据模型,E-R数据模型(Entity Relationship data model),即实体联系数据模型,于1976年由P.P.Chen首先提出。1. 实体(entity)凡是可以互相区别而可以被人们识别的事、物、概念等统统抽象为实体。具有共性的一类实体可以划分为一个实体集(Entity Set)。一般以大写字母表示实体集,小写字母表示实体。以学生为例,设以ES表示学生实体集,e表示学生实体,则ESee是学生。,基本概念,2. 属性(attribute):实体一般具有若干特征,称之为实体的属性 单域的简单属性多域的组合属性 单值的(Single-valued) 多值的(mul

2、ti-valued) 实体键(entity key)实体主键(entity primary key),基本概念,3. 联系(relationship)实体与实体间的关系抽象为联系,和实体一样,联系也有属性。除此之外,对联系还有如下描述: 参与度:实体参与联系的最小和最大次数,这称为实体的参与度。参与度的一般形式可表示为(min,max),式中,0minmax,且max1。如基数比约束(cardinality ratio constraint): 11)、一对多(1N)和多对多(MN)。,基本概念,参与约束(participation constraint)部分参与(partial partic

3、ipation)如果min0,则意味着实体集中的实体不一定每个都参与联系,实体的这种参与联系的方式称为部分参与。全参与(total participation)如果min0,则意味着实体集中的每个实体都必须参与联系 结构约束(Structural constraint):基数比约束和参与约束构成联系的语义约束,合称为结构约束。只用实体的参与度便可表示结构约束。参与度的min项隐含了参与约束;而其中的max项隐含了基数比约束。,ER 图(E-R diagram),矩形框代表实体,双线矩形框代表弱实体,菱形框代表联系,联系与实体相联的弧上所注明的1、N、M、P等表示联系的基数比。如果弧为双线,则表

4、示该实体全参与;如果弧为单线,则表示该实体部分参与。,ER 图(E-R diagram),举例:,工作于,部门,包含,职工,工程,供应商,零件,供应,组成,1,M,M,N,主管,1,1,M,N,M,N,P,ER 图(E-R diagram),属性:圆角矩形框组成键的属性:加有短垂线组合属性:属性结构,职工,性别,职工号,姓,名,ER 图,弱实体集:依赖于其他实体集的存在而存在的实体集,其组成键的属性中的一些或全部属于另一个实体集。,1,职工,家属,设置,M,基本ER数据模型与扩充ER数据模型,以实体、属性和联系三个抽象概念为基础的E-R数据模型是基本E-R数据模型。为了满足新的应用需求和表达更

5、多的语义,E-R数据模型历经了不少扩充。下面将介绍扩充E-R数据模型(Extended E-R data model,简称EER data model)。,课堂练习,3.1 请用ER图为银行设计一个数据库,为其管理顾客和帐户的信息。顾客的信息包括姓名、地址、电话和身份证号码。帐户包括编号、类型和结余。1).修改ER图使一个帐户只能有一个顾客;2).进一步修改你的ER图使一个顾客只能有一个帐户answer,课堂练习,3.2 请用ER图为医院设计一个数据库管理系统。该医院包含许多科室(科名,地址,电话),每个科室包含许多医生和多间病房(房号,床号),每个病房只属于一个科室,每个病房可住若干名病人(

6、病历号,姓名),每个病人有一名主治大夫,每名医生可负责多个病人的诊治。 answer,扩充ER数据模型(EER),1. 特殊化(Specialization)和普遍化(generalization)从普遍到特殊的过程,叫做特殊化。即一个实体集可以按照某一特征区分为几个子实体集的过程。如:学生:专科生,本科生,研究生相反的过程称为普遍化 如:将学生、教师、职工这些实体集概括为“人”,扩充ER数据模型(EER),设有实体集E,如F是E的某些真子集的集合,即FSiSiE,i1,n,则称F是E的一个特殊化,E是S1、S2、Sn的超实体集,S1、S2、Sn称为E的子实体集。若ni1SiE,则称F是E的全

7、(total)特殊化;否则,F是E的部分(partial)特殊化。如SiSj,ij,则F是不相交(disjoint)的特殊化;否则,F是重叠(overlapping)的特殊化。子实体集继承(inherit)超实体集的所有属性和联系。,扩充ER数据模型(EER),图形表示实体与实体之间连线上的符号表示特殊化,圆圈中的d表示不相交特殊化,圆圈中的o表示重叠特殊化。超实体集与圆圈的联线若是双线,则表示全特殊化;若是单线,则表示部分特殊化。,扩充ER数据模型(EER),举例,扩充ER数据模型(EER),2. 聚集(aggregation)在基本E-R数据模型中,只有实体才能参与联系,不允许联系参与联系

8、。在EER数据模型中,可以把联系看成由参与联系的实体组合而成的新的实体,其属性为参与联系的实体的属性和联系的属性的并。这种新的实体称为参与联系的实体的聚集。有了聚集这个抽象概念,联系也可以参与联系。,扩充ER数据模型(EER),图形表示,科研项目,研究所,公司,合作,大学,承担,扩充ER数据模型(EER),3. 范畴(category)在模拟现实世界时,有时要用到由不同类型的实体组成的实体集,例如车主这个实体集的成员可能是单位,也可能是个人。这种由不同类型实体组成的实体集称之为范畴。设E1、E2、En是n个不同类型的实体集,则范畴T可定义为: T(E1E2En)即T是多个超类并集的子集。E1、

9、E2、En也称为T的超实体集。,扩充ER数据模型(EER),上图中帐户是个范畴,可以是单位,也可以是个人。圆圈中的表示并操作。范畴也继承其超实体集的属性,但与子实体集的继承规则不一样。范畴的继承是有选择性的。,课堂练习,3.3 设一个系有学生、班级、课程、教师、教研组等数据对象。其中教授或副教授可以指导若干名研究生。每个数据对象可有若干属性。数据对象之间可有若干联系。试用EER图对你所在的系进行模拟。Answer,第三章 ER 数据模型作业,3.1. 清华大学经管学院下设若干系,每个系包含一个或几个班级,有若干名教师。每个班级有若干名学生。教师每学期讲授多门课程,每门课程每学期由一名教师讲授。

10、现在要为其设计一个数据库,满足如下要求:每学期开始时打印每个系的每个班级的基本信息以及学生的基本状况报表,包括每个学生的基本信息,包括联系方式,如宿舍号,电话,EMAIL地址等,第三章 ER 数据模型作业,每学期重新打印一份教师名单,以便于联系。每学期开始时打印一份本学期本院开设课程以及响应的先修课程的相关信息表每学期末为每班学生打印一份本学期选课成绩单为了便于日常工作,需要维护一张包括系级领导(系主任)以及院级领导的名单。请用ER图为该数据库设计概念模型,然后按照如下要求进一步修改该模型。,第三章 ER 数据模型作业,1).若一个教师每学期只授一门课,而一门课可以由多名教授开设。修改你的ER图。2).若同样的课程(名称相同、内容基本一样)可以由不同的老师讲授,修改你的ER图3).如果我们不仅要知道学生选修的课程名称以及分数,还要知道选修的是哪位教师授的课,请在2) 的基础上修改你的ER图。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文资料库 > 毕业论文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。