数据库原理及应用期末考试复习题库+2017(1)(3) 下载本文

(2)将ER模型转换成关系模型,要求标明每个关系模式的主码和外码。

运动队(队名,主教练)

运动项目(项目编号,项目名,所属类别)

运动员(运动员编号,姓名,性别,年龄,队名) 参加(运动员编号,项目编号,名次,成绩,日期)

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

若规定:商店与商品间存在“销售”关系,每个商店可销售多种商品,每种商品也可放在多个商店销售,每个商店每销售一种商品,有月销售量;商店与职工间存在着“聘用”联系,每个商店有许多职工,每个职工只能在一个商店工作,商店聘用职工有聘期和月薪。 (1) 试画出E-R图,实体的属性可省;

月薪 商品 M 销售 N 商店 1 聘用 N 职工 月销售量 聘期

(2) 将E-R图转换成关系模式,并标出每个关系模式的主码和外码。 商店(商店编号,商店名,地址)

职工(职工编号,姓名,性别,业绩,商店编号,聘期,月薪) 商品(商品号,商品名,规格,单价) 销售(商店编号,商店号,月销售量)

7.某医院病房的信息管理系统中需要的信息如下:

科室:科室名,科室地址,科室电话病房:病房号,床位数量 医生:工作证号,姓名,职称,年龄病人:病历号,姓名,性别

若规定,一个科室有多个病房、多位医生,一个病房只属于一个科室,一个医生只属于一个科室,但可以负责多名病人的诊治;一名病人的诊治医生可以有多位,但只能入住一间病房。 (1) 试画出E-R图,实体的属性可省;

- 29 -

医生 N 销售 1 科室 1 聘用 N 病房 1 M 诊治 N 病人 N 入住

(2) 将E-R图转换成关系模式,并标出每个关系模式的主码和外码。

科室(科室名,科室地址,科室电话) 病房(病房号,床位数量,科室名) 医生(工作证号,姓名,职称,年龄,科室名) 病人(病历号,姓名,性别,病房号) 诊治(工作证号,病历号)

8.现有关系模式如下:

TEACHER(TNO,TNAME,DEPT,BNO,BNAME,BDATE,RDATE)。 TNO:教师编号TNAME:教师姓名DEPT:所在部门

BNO:图书编号BNAME:书名BDATE:借书日期RDATE:还书日期

若规定:教师编号是唯一的,教师编号函数确定教师姓名;教师只能在一个部门工作,一个部门有多名教师;图书编号是唯一的,图书编号函数确定书名;一名教师可以借多本图书,也可以反复借阅同本书,教师借阅图书时要登记借书日期和还书日期。

(1) 根据上述规定,写出关系模式TEACHER的基本函数依赖;

TNO -> (TNAME,DEPT) BNO -> BNAME

(TNO,BNO,BDATE) -> RDATE (2) 找出关系模式TEACHER的候选码; (TNO,BNO,BDATE)

(3) 试问关系模式TEACHER最高已经达到第几范式?为什么?

因为存在非主属性(如TNAME,再如DEPT,又如BNAME)对于码的部分函数依赖, 所以未达到二范式,只属于一范式 (4) 如果TEACHER不属于3NF,请将TEACHER分解成3NF模式集。

R1(TNO,TNAME,DEPT) R2(BNO,BNAME) R3(TNO,BNO,BDATE, RDATE) 9.假设某商业集团数据库中有一关系模式R如下:

R (商店编号,商品编号,库存数量,部门编号,负责人) 每个商店的每种商品只在一个部门销售; 每个商店的每个部门只有一个负责人; 每个商店的每种商品只有一个库存数量。 (1) 根据上述规定,写出关系模式R的基本函数依赖;

(商店编号,商品编号) →部门编号 (商店编号,部门编号) →负责人 (商店编号,商品编号) →库存数量

- 30 -

(2) 找出关系模式R的候选码;

R的候选码是 (商店编号,商品编号)

(3) 试问关系模式R最高已经达到第几范式?为什么?

因为R中存在着非主属性’负责人’对候选码 (商店编号,商品编号)的传递函数依赖,所以R属于2NF,R不属于3NF。 (4) 如果R不属于3NF,请将R分解成3NF模式集。

R1 (商店编号,商品编号,库存数量,部门编号) R2 (商店编号,部门编号,负责人)

10. 设有一个记录各个球队队员每场比赛进球数的关系模式 R(队员编号,比赛场次,进球数,球队名,队长名)

如果规定每个队员只能属于一个球队,每个球队只有一个队长,要求: (1)写出关系模式R的基本函数依赖和主键。

(2)试说明R不是2NF模式的理由,并把R分解成2NF模式 (3) R分解成3NF模式,并说明理由。 参考解答: (1)基本的FD:

(队员编号,比赛场次) →进球数 队员编号→球队名 球队名→队长名

主键是 : (队员编号,比赛场次)

(2) 由于: 队员编号→球队名,即存在非主属性对主键的部分函数依赖, 所以 R 不是2NF 将R 分解为

R1={队员编号,比赛场次,进球数} , R2={队员编号,球队名,队长名} , R1, R2 都是2 NF 模式 (3) R1 是3 NF 模式

R2中: 队员编号→球队名,球队名→队长名

有队员编号→队长名,存在传递函数依赖, R2不是 3NF 将R2分解为:

R21(队员编号,球队名) , R22(球队名,队长名) 则R21, R22 均是 3NF

ρ={R1, R21, R22 }是一个3NF 的模式集.

11.假设为自学考试成绩管理设计了一个关系R(S#,SN,C#,CN,G,U),其属性的含义依次为考生号、姓名、课程号、课程名、分数和主考学校名称。

规定:每个学生学习一门课程只有一个分数;一个主考学校主管多门课程的考试,且一门课程只能属于一个主考学校管理;每名考生有唯一的考号,每门课程有唯一的课程号。

(1) 写出关系模式R基本的函数依赖集。 (2) 写出关系模式R的候选键。

(3) 关系模式R最高达到第几范式?为什么? (4) 将R规范化为3NF。 参考解答:

(1) F={(学号课程号)→G,课程号→U,学号→SN,课程号→CN} (2) (学号课程号)

- 31 -

(3) 最高达到第一范式,因为(学号课程号)是主键,但课程号→U,学号→SN,课程号→CN,即U, SN,CN这些非主属性均部分函数依赖于主键,所以只能达到第一范式。 (4) S (学号, SN)

C (课程号, CN, U) SC (学号,课程号, G)

12.设某人才市场数据库中有一个记录应聘人员信息的关系模式:

R(人员编号,姓名,性别,职位编号,职位名称,考试成绩)

如果规定:每人可应聘多个职位,每个职位可由多人应聘且必须参加相关考试,考试成绩由人员编号和职位编号确定。

(1) R最高达到第几范式?说明理由。 人员编号→(姓名,性别)

职位编号→职位名称(人员编号,职位编号)→考试成绩 主码为(人员编号,职位编号)

存在非主属性(姓名、性别、职位名称中任何一个)对于码的部分函数依赖,因此R为第一范式。 (2) 将R规范到3NF。

R1(人员编号,姓名,性别) R2(职位编号,职位名称)

R3(人员编号,职位编号,考试成绩)

13.设有一个反映工程及其所使用相关材料信息的关系模式:

R(工程号,工程名,工程地址,开工日期,完工日期,材料号,材料名称,使用数量)

每个工程的名称、地址、开工日期、完工日期唯一;每个工程使用若干种材料,每种材料可应用于若干工程中,但每个工程使用某种材料的数量一定。 (1) R最高达到第几范式?说明理由。

工程号→(工程名,工程地质,开工日期,完工日期) 材料号→材料名称,(工程号,材料号)→使用数量 主码为(工程号,材料号)

存在非主属性对于码的部分函数依赖,因此R为第一范式。 (2) 将R规范到3NF。

R1(工程号,工程名,工程地质,开工日期,完工日期) R2(材料号,材料名称)

R3(工程号,材料号,使用数量)

14.设关系模式R(学号,课程号,成绩,TNAME,TADDR),其属性分别表示学生学号、选修课程的编号,成绩、任课教师地址等意义。如果规定,每个学生每学一门课只有一个成绩;每门课只有一个教师任教;每个教师只有一个地址(此处不允许教师同名同姓)。

(1) 试写出关系模式R基本的函数依赖和候选键。 (2) 试把R分解成2NF模式集并说明理由。 (3) 试把R分解成3NF模式集,并说明理由。 解:

(1) F={(学号,课程号)→成绩,课程号→TNAME,TNAME→TADDR}

关系模式的侯选键是(学号,课程号)。

(2) 在原模式R中,TNAME不完全依赖于键(学号,课程号),不满足2NF,因此需进行分解为下列关系。

SC={学号,课程号,成绩} C={课程号,TNAME,TADDR}

- 32 -