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) 分别设计舰队和舰艇两个局部E-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所示。各实体的属性如下:
系:系名,系主任号,系地址,系电话
班级:班号,班长,人数
教研室:教研室名,地址,电话
学生:学号,姓名,性别,年龄,籍贯,入学年份,专业
本科生:已修学分,平均成绩
研究生:研究方向,导师姓名
教员:姓名,年龄,性别,职称,专长
正副教授:科研项目,研究方向
转自百度文库: