当前位置: 首页 > >

数据库设计之概念结构设计---------E-R图详解(流程和关系)

发布时间:

0、试述采用E-R方法进行数据库概念设计的过程。


答:采用E-R方法进行数据库概念设计,可以分成3步进行:首先设计局部E-R模式,然后把各局部E-R模式综合成一个全局的E-R模式,最后对全局E-R模式进行优化,得到最终的E-R模式,即概念模式。


1、某大学实现学分制,学生可根据自己情况选课。每名学生可同时选修多门课程,每门课程可由多位教师主讲;每位教师可讲授多门课程。其不完整的E-R图如图1所示。


(1)?????? 指出学生与课程的联系类型。


(2)?????? 指出课程与教师的联系类型。


(3)?????? 若每名学生有一位教师指导,每个教师指导多名学生,则学生与教师是如何联系?


(4)?????? 在原E-R图上补画教师与学生的联系,并完善E-R图。


答:


(1)?????? 学生与课程联系类型是多对多联系。


(2)?????? 课程与教师的联系类型是多对多联系。


(3)?????? 学生与教师的联系类型是一对多联系。


(4)?????? 完善本题E-R图的结果如图2所示。





? ? ? ?


2、将如图3所示的E-R图转换为关系模式,菱形框中的属性自己确定。


答:本题的E-R图转换为如下的关系模式:


单位(单位号,地址,电话)


职工(职工号,姓名,性别,年龄,单位号)


?



3、假定一个部门的数据库包括以下信息:


(1)?????? 职工的信息:职工号、姓名、地址和所在部门。


(2)?????? 部门的信息:部门所有职工、部门名、经理和销售的产品。


(3)?????? 产品的信息:产品名、制造商、价格、型号及产品的内部编号。


(4)?????? 制造商的信息:制造商名称、地址、生产的产品名和价格。


试画出这个数据库的E-R图。


答:本题对应的E-R图如图 4所示。



?


4、某医院病房计算机管理中心需要如下信息:


科室:科名、科地址、科电话、医生姓名


病房:病房号、床位号、所属科室名


医生:姓名、职称、所属科室名、年龄、工作证号


病人:病历号、姓名、性别、诊断、主管医生、病房号


其中,一个科室有多少个病房、多少个医生,一个病房只能属于一个科室,一个医生只属于一个科室,但可负责多个病人的诊治,一个病人的主管医生只有一个。


完成如下设计:


(1)?????? 设计该计算机管理系统的E-R图


(2)?????? 将该E-R图转换为关系模式结构。


(3)?????? 指出转换结果中每个关系模式的后选码。


答:(1)本题的E-R图如图5所示。



(2)对应的关系模式结构如下:


科室(科名,科地址,科电话)


病房(病房号,床位号,科室名)


医生(工作证号,姓名,职称,科室名,年龄)


病人(病历号,姓名,性别,主管医生,病房号)


(3)每个关系的后选码如下:


科室的后选码是科名。


病房的后选码是科室名+病房号。


?? 医生的后选码是工作证。


?? 病人的后选码是病历号。


5、设有如下实体:


学生:学号、单位名称、姓名、性别、年龄、选修课名


课程:编号、课程名、开课单位、认课教师号


教师:教师号、姓名、性别、职称、讲授课程编号


单位:单位名称、电话、教师号、教师姓名


上述实体中存在如下联系:


(1)?????? 一个学生可选多门课程,一门课程可被多个学生选修。


(2)?????? 一个教师可讲授多门课程,一门课程可由多个教师讲授。


(3)?????? 一个单位可有多个教师,一个教师只能属于一个单位。


试完成如下工作:


(1)?????? 分别设计学生选课和教师任课两个局部E-R图。


(2)?????? 将上述设计完成的E-R图合并成一个全局E-R图。


(3)?????? 将全局E-R图转换为等价的关系模式表示的数据库逻辑结构。


答:(1)学生选课局部E-R图如图6所示,教师任课局部E-R图如图7所示。



?



(2)合并的全局E-R图如图8所示。


?



为避免复杂,合并的全局E-R图中省略了以下各实体的属性:


单位:单位名称,电话


学生:学号,姓名,性别,年龄


教师:教师号,姓名,性别,职称


课程:编号,课程名


(3)该全局E-R图转换为等价的关系模式表示的数据逻辑结构如下:


单位(单位名称,电话)


课程(教师号,姓名,性别,职称,单位名称)


学生(学号,姓名,性别,年龄,单位名称)


讲授(教师号,课程编号)


选修(学号,课程编号)


6、图9给出(a)、(b)和(c)3个不同的局部模型,将其合并成一个全局信息结构,并设置联系实体中的属性(准许增加认为必要的属性,也可将有关基本实体的属性选作联系实体的属性)。


各实体构成如下:


部门:部门号、部门名、电话、地址


职员:职员号、职员名、职务(干部/工人)、年龄、性别


设备处:单位号、电话、地址


工人:工人编号、姓名、规格、价格


设备:设备号、名称、规格、价格


零件:零件号、名称、规格、价格


厂商:单位号、名称、电话、地址



? ?答:汇总后的E-R图如图6.20所示。


?



各类实体的属性为:


部门:部门号、部门名、电话、地址


职工:职工号、职工名、职务、年龄、性别


设备:设备号、名称、规格、价格


零件:零件号、名称、规格、价格


7、一个图书馆借阅管理数据库要求提供下述服务:


(1)可随时查询书库中现有书籍的品种、数量与存放位置。所有各类书籍均可由书号惟一标识。


(2)可随时查询书籍借还情况,包括借书人单位、姓名、借书证号、借书日期和还书日期。


我们约定:任何人可借多种书,任何一种书可为多个人所借,借书证号具有惟一性。


(3)当需要时,可通过数据库中保存的出版社的电报编号、电话、邮编及地址等信息下相应出版社增购有关书籍。我们约定,一个出版社可出版多种书籍,同一本书仅为一个出版社出版,出版社名具有惟一性。


根据以上情况和假设,试作如下设计:


(1)?? 构造满足需求的E-R图。


(2)?? 转换为等价的关系模式结构。


答:(1)满足上述需求的E-R图如图11所示。



(2)转换为等价的关系模式结构如下:


借书人(借书证号,姓名,单位)


图书(书号,书名,数量,位置,出版社名)


出版社(出版社名,电报编号,电话可,邮编,地址)


借阅(借书证号,书号,借书日期,还书日期)


8、工厂(包括厂名和厂长名)需建立一个管理数据库存储以下信息:


(1)?? 一个工厂内有多个车间,每个车间有车间号、车间主任姓名、地址和电话。


(2)?? 一个车间有多个工人,每个工人有职工号、姓名、年龄、性别和工种。


(3)?? 一个车间生产多种产品,产品有产品号和价格。


(4)一个车间生产多种零件,一个零件也可能为多个车间制造。零件有零件号、重量和价格。


(5)一个产品由多种零件组成,一种零件也可装配出多种产品。


(6)产品与零件均存入仓库中。


(7)厂内有多个仓库,仓库有仓库号、仓库主任姓名和电话。


试:(1)画出该系统的E-R图。


(2)给出相应的关系模式。


  (3)画出该系统的层次模式图。


答:(1)该系统的E-R图如图12所示。


各实体的属性为:


工厂:厂名、厂长姓名


车间:车间号、车间主任姓名、地址、电话


工人:职工号、姓名、年龄、性别、工种


仓库:仓库号、仓库主任姓名、电话


零件:零件号、重量、价格


产品:产品号、价格



(2)相应的关系模式如下:


工厂(厂名、厂长姓名)


车间(车间号、车间主任姓名、地址、电话、厂名)


工人(职工号、姓名、年龄、性别、工种、车间号)


仓库(仓库号、仓库主任姓名、电话、长名)


产品(产品号、价格、车间号、仓库号)


零件(零件号、重量、价格、仓库号)


制造(车间号、零件号)


(3)该系统的层次模型图如图13所示。


8、有如下运动队和运动会两个方面的实体:


1.运动队方面


运动队:队名、教练姓名、队员姓名


队员:队名、队员姓名、性别、项名


其中,一个运动队有多个队员,一个队员仅属于一个运动队,一个队一般有一个教练。


2.运动会方面


运动队:队编号、队名、教练姓名


项目:项目名、参加运动队编号、队员姓名、性别、比赛场地


其中,一个项目可由多个队参加,一个运动员可参加多个项目,一个项目一个比赛场地。



? ? 请完成如下设计:


(1)?? 分别设计运动队和运动会两个局部E-R图。


(2)?? 将他们合并为一个全局E-R图。


(3)?? 合并时存在什么冲突,你是如何解决这些冲突的?


答:(1)运动队局部E-R图如图14所示,运动会局部E-R图如图15所示。



(2)合并结果如图6.26所示。


?



? ? ?(3)命名冲突:项名、项目名异名同义,统一命名为项目名。


结构冲突:项目在两个局部E-R图中,一个作属性,一个作实体,合并统一为实体。


9、假设要建立一个企业数据库,该企业有多个下属单位,每一个单位有多个职工,一个职工仅隶属于一个单位,且一个职工仅在一个工程中工作,但一个工程中有很多职工参加工作,有多个供应商为各个工程供应不同设备。单位的属性有:单位名、电话。职工的属性有:职工号、姓名、性别。设备的属性有:设备号、设备名、产地。供应商的属性有:姓名、电话。工程的属性有:工程名、地点。


请完成如下处理:


(1)?? 设计满足上述要求的E-R图。


(2)?? 将该E-R图转换为等价的关系模式。


(3)?? 根据你的理解,用下划线标明每个关系中的码。


   答:(1)满足要求的E-R图如图17所示。



?


各实体的属性如下:


单位(单位名、电话)


职工(职工号、姓名、性别)


设备(设备名、设备号、产地)


供应商(姓名、电话)


工程(工程名、地点)


(2)转换后的关系模式如下:


单位(单位名、电话)


职工(职工号、单位名、工程名、姓名、性别)


设备(设备名、设备号、产地)


供应商(姓名、电话)


工程(工程名、地点)


供应(供应商姓名、工程名、设备号、数量)(3)见(2)中下划线。


10、图反映了一个公司部门(DEPT)、职工(EMP)、工程(PROJ)、材料(PART)、材料供应商(SUPP)和仓库(WH)之间联系的E-R图。建立它的关系模式。



?


答:对应的关系模式如下:


  部门(部门号,部门名,…)


  职工(职工号,职工名,部门号,工程号,…)


  工程(工程号,工程名,…)


  材料(材料号,材料名,…)


  材料供应商(供应商号,姓名,…)


仓库(仓库号,仓库名,地点,…)


INV(仓库号,材料号)


S-PR-PA(供应商号,公称好,材料号)


有下划线的属性或属性组为码。


11、设一个海军基地要建立一个舰队管理信息系统,它包括如下两个方面的信息:


1.舰队方面


  舰队:舰队名称、基地地点、舰艇数量


  舰艇:编号、舰艇名称、舰队名称


2.舰艇方面


  舰艇:舰艇编号、舰艇名、武器名称


  武器:武器名称、武器生产时间、舰艇编号


  官兵:官兵证号、姓名、舰艇编号


其中,一个舰队拥有多艘舰艇,一艘舰艇属于一个舰队;一艘舰艇安装多种吴起,一个武器可安装于多艘舰艇上;一艘舰艇有多个官兵,一个官兵只属于一艘舰艇。


请完成如下设计:


(1)?? 分别设*⒍雍徒⑼Я礁鼍植浚-R图。


(2)?? 将上述两个局部E-R图合并为一个全局E-R图。


(3)?? 将该全局E-R图转换为关系模式。


(4)?? 合并时是否存在命名冲突?如何处理?


答:(1)舰队和舰艇两个局部E-R图分别如图所示。


??? (2)将图19和图20所示出两个局部E-R图合并为如图21所示的全局E-R图。


(3)转换的关系模式如下:


   舰队(舰队名称,基地地点)



舰艇(舰艇编号,舰艇名称,舰队名称,舰艇数量)


官兵(官兵证号,姓名,舰艇编号)


武器(武器名称,武器生产时间)


安装(舰艇编号,吴起名称)


(4)存在冲突,表现在:


● “舰艇编号”和“编号”存在异名同义,合并时统一为“舰艇编号”。


● “舰艇名”和“舰艇名称”存在异名同义,合并时统一为“舰艇名称”。



? ? ? 12、社某商业集团数据库中有3个实体集,一是“商品”实体集,属性有商店编号、商店名、地址等;二是“商品”实体集,属性有商品号、商品名、规格、单价等;三是“职工”实体集,属性有职工编号、姓名、性别、业绩等。



商店与商品间存在“销售”联系,每个商店可销售多种商品,每中商品也可以放在多个商店销售,每个商店孝顺的一种商品有月销售量;商店与职工之间存在“聘用”联系,每个商店有许多职工,每个职工只能在一个商店工作,商店聘用职工有聘期和工资。


(1)?? 试画出E-R图。


(2)?? 将该E-R图转换成关系模式,并指出主码和外码。


答:(1)对应的E-R图如图所示。



(2)这个E-R图可转换为如下关系模式:


商店(商店编号,商店名,地址) 商店编号为主码


职工(职工编号,姓名,性别,业绩,商店编号,聘期,工资) 职工编号为主码,商店编号为外码。


商品(商品号,商品名,规格,单价) 商品号为主码


销售(商店编号,商品号,月销售量) 商店编号+商品号为主码  商店编号,商品号均为外码


13、学校中有若干系,每个系有若干班级和教研室,每个教研室有若干教员,其中有的教授和副教授每人各带若干研究生,每个班有若干学生,每个学生选修若干课程,每门课可由若干学生选修。请用E-R图画出此学校的概念模型,实体的属性可自行设计。


答:对应的E-R图如图23所示。各实体的属性如下:


系:系名,系主任号,系地址,系电话


班级:班号,班长,人数


教研室:教研室名,地址,电话


学生:学号,姓名,性别,年龄,籍贯,入学年份,专业


本科生:已修学分,*均成绩


研究生:研究方向,导师姓名


教员:姓名,年龄,性别,职称,专长


正副教授:科研项目,研究方向


?




友情链接: