第五章 关系数据理论
一、选择题
1. 为了设计出性能较优的关系模式,必须进行规范化,规范化主要的理论依据是(A) 。
A. 关系规范化理论 B. 关系代数理论 C.数理逻辑 D. 关系运算理论
2. 规范化理论是关系数据库进行逻辑设计的理论依据,根据这个理论,关系数据库中的关系必须满足:每一个属性都是(B) 。
A. 长度不变的 B. 不可分解的 C.互相关联的 D. 互不相关的
3. 已知关系模式R(A,B,C,D,E)及其上的函数相关性集合F={A→D,B→C ,E→A },该关系模式的候选关键字是(B) 。
A.AB B. BE C.CD D. DE
4. 设学生关系S(SNO,SNAME,SSEX,SAGE,SDPART)的主键为SNO,学生选课关系SC(SNO,CNO,SCORE)的主键为SNO和CNO,则关系R(SNO,CNO,SSEX,SAGE,SDPART,SCORE)的主键为SNO和CNO,其满足(A)。
A. 1NF B.2NF C. 3NF D. BCNF
5. 设有关系模式W(C,P,S,G,T,R),其中各属性的含义是:C表示课程,P表示教师,S表示学生,G表示成绩,T表示时间,R表示教室,根据语义有如下数据依赖集:D={ C→P,(S,C)→G,(T,R)→C,(T,P)→R,(T,S)→R },关系模式W的一个关键字是(D) 。
A. (S,C) B. (T,R) C. (T,P) D. (T,S)
6. 关系模式中,满足2NF的模式(B) 。
A. 可能是1NF B. 必定是1NF C. 必定是3NF D. 必定是BCNF
7. 关系模式R中的属性全是主属性,则R的最高范式必定是(C) 。
A. 1NF B. 2NF C. 3NF D. BCNF
8. 消除了部分函数依赖的1NF的关系模式,必定是(B) 。
A. 1NF B. 2NF C. 3NF D. BCNF
9. 如果A->B ,那么属性A和属性B的联系是(B) 。
A. 一对多 B. 多对一 C.多对多 D. 以上都不是
10. 关系模式的候选关键字可以有1个或多个,而主关键字有(C) 。
A. 多个 B. 0个 C. 1个 D. 1个或多个
11. 候选关键字的属性可以有(D) 。
A. 多个 B. 0个 C. 1个 D. 1个或多个
12. 关系模式的任何属性(A) 。
A. 不可再分 B. 可以再分
C. 命名在关系模式上可以不唯一 D. 以上都不是
13. 设有关系模式W(C,P,S,G,T,R),其中各属性的含义是:C表示课程,P表示教师,S表示学生,G表示成绩,T表示时间,R表示教室,根据语义有如下数据依赖集:D={ C→P,(S,C)→G,(T,R)→C,(T,P)→R,(T,S)→R },若将关系模式W分解为三个关系模式W1(C,P),W2(S,C,G),W2(S,T,R,C),则W1的规范化程序最高达到(D) 。
A. 1NF B.2NF C. 3NF D. BCNF
14. 在关系数据库中,任何二元关系模式的最高范式必定是(D) 。
A. 1NF B.2NF C. 3NF D. BCNF
15. 在关系规范式中,分解关系的基本原则是(B)。
I.实现无损连接
II.分解后的关系相互独立
III.保持原有的依赖关系
A. Ⅰ和Ⅱ B. Ⅰ和Ⅲ C. Ⅰ D. Ⅱ
16. 不能使一个关系从第一范式转化为第二范式的条件是(B)。
A.每一个非属性都完全函数依赖主属性
B.每一个非属性都部分函数依赖主属性
C.在一个关系中没有非属性存在
D.主键由一个属性构成
17. 任何一个满足2NF但不满足3NF的关系模式都不存在(D)。
A.主属性对键的部分依赖 B.非主属性对键的部分依赖
C.主属性对键的传递依赖 D.非主属性对键的传递依赖
18. 设数据库关系模式R=(A,B,C,D,E),有下列函数依赖:A→BC,D→E,C→D;下述对R的分解中,哪些分解是R的无损连接分解(B) 。
I.(A,B,C)(C,D,E)
II.(A,B)(A,C,D,E)
III.(A,C)(B,C,D,E)
IV.(A,B)(C,D,E)
A.只有Ⅳ B. Ⅰ和Ⅱ C. Ⅰ、Ⅱ和Ⅲ D. 都不是
19. 设U是所有属性的集合,X、Y、Z都是U的子集,且Z=U-X-Y。下面关于多值依赖的叙述中,不正确的是(C)。
A.若X→→Y,则X→→Z
B.若X→Y,则X→→Y
C.若X→→Y,且Y′∈Y,则X→→Y′
D.若Z=∮,则X→→Y
20. 若关系模式R(U,F)属于3NF,则(C)。
A. 一定属于BCNF
B. 消除了插入的删除异常
C. 仍存在一定的插入和删除异常
D. 属于BCNF且消除了插入和删除异常
21. 下列说法不正确的是(C)。
A. 任何一个包含两个属性的关系模式一定满足3NF
B. 任何一个包含两个属性的关系模式一定满足BCNF
C. 任何一个包含三个属性的关系模式一定满足3NF
D. 任何一个关系模式都一定有码
22. 设关系模式R(A,B,C),F是R上成立的FD集,F={B→C},则分解P={AB,BC}相对于F(A)。
A. 是无损联接,也是保持FD的分解
B. 是无损联接,也不保持FD的分解
C. 不是无损联接,但保持FD的分解
D. 既不是无损联接,也不保持FD的分解
23. 关系数据库规范化是为了解决关系数据库中(A)的问题而引入的。
A. 插入、删除和数据冗余 B. 提高查询速度
C. 减少数据操作的复杂性 D. 保证数据的安全性和完整性
24. 关系的规范化中,各个范式之间的关系是( ) 。
A. 1NF∈2NF∈3NF B. 3NF∈2NF∈1NF
C. 1NF=2NF=3NF D. 1NF∈2NF∈BCNF∈3NF
25. 数据库中的冗余数据是指可(D)的数据 。
A. 容易产生错误 B. 容易产生冲突 C. 无关紧要 D. 由基本数据导出
26. 学生表(id,name,sex,age,depart_id,depart_name),存在函数依赖是id→name,sex,age,depart_id;dept_id→dept_name,其满足(B)。
A. 1NF B. 2NF C. 3NF D. BCNF
27. 设有关系模式R(S,D,M),其函数依赖集:F={S→D,D→M},则关系模式R的规范化程度最高达到(B)。
A. 1NF B. 2NF C. 3NF D. BCNF
28. 设有关系模式R(A,B,C,D),其数据依赖集:F={(A,B)→C,C→D},则关系模式R的规范化程度最高达到(B)。
A. 1NF B. 2NF C. 3NF D. BCNF
29. 下列关于函数依赖的叙述中,哪一条是不正确的(B)。
A.由X→Y,Y→Z,则X→YZ
B.由X→YZ,则X→Y, Y→Z
C.由X→Y,WY→Z,则XW→Z
D.由X→Y,Z∈Y,则X→Z
30. X→Y,当下列哪一条成立时,称为平凡的函数依赖(B)。
A. X∈Y B. Y∈X C. X∩Y=∮ D. X∩Y≠∮
31. 关系数据库的规范化理论指出:关系数据库中的关系应该满足一定的要求,最起码的要求是达到1NF,即满足(D)。
A.每个非主键属性都完全依赖于主键属性
B.主键属性唯一标识关系中的元组
C.关系中的元组不可重复
D.每个属性都是不可分解的
32. 根据关系数据库规范化理论,关系数据库中的关系要满足第一范式,部门(部门号,部门名,部门成员,部门总经理)关系中,因哪个属性而使它不满足第一范式(B)。
A. 部门总经理 B. 部门成员 C. 部门名 D. 部门号
33. 有关系模式A(C,T,H,R,S),其中各属性的含义是:
C:课程 T:教员 H:上课时间 R:教室 S:学生
根据语义有如下函数依赖集:
F={C→T,(H,R)→C,(H,T)RC,(H,S)→R}
(1)关系模式A的码是(B)。
A. C B.(H,S) C.(H,R) D.(H,T)
(2)关系模式A的规范化程度最高达到(B)。
A. 1NF B. 2NF C. 3NF D. BCNF
(3)现将关系模式A分解为两个关系模式A1(C,T),A2(H,R,S),则其中A1的规范化程度达到(D)。
A. 1NF B. 2NF C. 3NF D. BCNF
二、简答题
1.理解并给出下列术语的定义:
函数依赖、部分函数依赖、完全函数依赖、候选码、主码、 外码、全码。
答:
函数依赖:设R(U)是一个关系模式,U是R的属性集合,X和Y是U的子集。对R(U)的任意一个可能的关系r,如果r中不存在两个元组,它们在X上的属性值相同,而在Y上的属性值不同,则称“X函数确定Y”或“Y函数依赖与X”, 记作X→Y。
解析:
1)函数依赖是最基本的一种数据依赖,也是最重要的一种数据依赖。
2)函数依赖是属性之间的一种联系,体现在属性值是否相等。由上面的定义可以知道,如果X→Y, 则r中任意两个元组,若它们在X上的属性值相同,那么在Y上的属性值一定也相同。
3)我们要从属性间实际存在的语义来确定它们之间的函数依赖,即函数依赖反映了现实世界的一种语义。
4)函数依赖不是指关系模式R的在某个时刻的关系(值)满足的约束条件,而是指R任何时刻的一切关系均要满足的约束条件。
完全函数依赖、部分函数依赖:在R(U)中,如果X→Y,并且对应X的任何一个真子集X,都有X′→Y,则称Y对X完全依赖;若X→Y,但Y不完全依赖于X,则称Y对X部分函数依赖。
外码:关系模式R中属性或属性组X并非R的码,但X是另一个关系模式的码,则称X是R的外部码也称外码。
全码:整个属性组是码,称为全码(All-key)
2.建立一个关于系、学生、班级、学会等诸信息的关系数据库。
描述学生的属性有:学号、姓名、出生年月、系名、班号、宿舍区。
描述班级的属性有:班号、专业名、系名、人数、入校年份。
描述系的属性有:系名、系号、系办公室地点、人数。
描述学会的属性有:学会名、成立年份、地点、人数。
有关语义如下:一个系有若干专业,每个专业每年只招一个班,每个班有若干学生。一个系的学生住在同一宿舍区。每个学生可参加若干学会,每个学会有若干学生。学生参加某学会有一个入会年份。
请给出关系模式,写出每个关系模式的极小函数依赖集,指出是否存在传递函数依赖,对于函数依赖左部是多属性的情况讨论函数依赖是完全函数依赖,还是部分函数依赖。
指出各关系的候选码、外部码,有没有全码存在?
答:
关系模式:学生S ( S#, SN, SB, DN, C#, SA)
班级 C ( C#, CS, DN, CNUM, CDATE)
系 D ( D#, DN, DA, DNUM)
学会 P (PN, DATE1, PA, PNUM)
学生—学会SP(S#,PN,DATE2)
其中,S#—学号,SN—姓名, SB—出生年月,SA—宿舍区
C#—班号,CS—专业名,CNUM—班级人数,CDATE—入校年份
D#—系号,DN—系名,DA—系办公室地点,DNUM—系人数
PN—学会号, DATE1—成立年月,PA—地点, PNUM—学会人数,DATE2—入会年份
每个关系模式的极小函数依赖集:
S:S#→SN, S#→SB, S#→C#, C#→DN, DN→SA
C:C#→CS, C#→CNUM, C#→CDATE, CS→DN, (CS, CDATE) →C#
D:D#→DN, DN→D#, D#→DA, D#→DNUM
P:PN→DATE1, PN→PA, PN→PNUM
SP:(S#, PN) →DATE2
S中存在传递函数依赖:S#→DN, S#→SA, C#→SA
C中存在传递函数依赖:C#→DN
(S#, PN) → DATE2 和 (CS, CDATE) → C#均为SP中的函数依赖,是完全函数依赖。
关系候选码外部码全码
SS# C#DN无
CC#(CS,CDATE) DN 无
D D#和DN无无
P PN无无
SP (S#, PN)S#,PN无
3. 试由Armostrong公理系统推导出下面三条推理规则:
(1)合并规则:若X→Z,X→Y,则有X→YZ
(2)伪传递规则:由X→Y,WY→Z有XW→Z
(3)分解规则:X→Y,Z 包含于 Y,有X→Z
证:
(1)已知X→Z,由增广律知XY→YZ,又因为X→Y,可得XX→XY→YZ,最后根据传递律得X→YZ。
(2)已知X→Y,据增广律得XW→WY,因为WY→Z,所以XW→WY→Z,通过传递律可知XW→Z。
(3)已知Z 包含于 Y,根据自反律知Y→Z,又因为X→Y,所以由传递律可得X→Z。
4. 试举出三个多值依赖的实例。
(1)关系模式MSC(M,S,C)中,M表示专业,S表示学生,C表示该专业的必修课。假设每个专业有多个学生,有一组必修课。设同专业内所有学生的选修的必修课相同,实例关系如下。按照语义对于M的每一个值M i,S有一个完整的集合与之对应而不问C取何值,所以M→→S。由于C与S的完全对称性,必然有M→→C成立。
M S C
M 1 S1 C1
M 1 S1 C2
M 1 S2 C1
M 1 S2 C2
…… …… ……
(2)关系模式ISA(I,S,A)中,I表示学生兴趣小组,S表示学生,A表示某兴趣小组的活动项目。假设每个兴趣小组有多个学生,有若干活动项目。每个学生必须参加所在兴趣小组的所有活动项目,每个活动项目要求该兴趣小组的所有学生参加。
按照语义有I→→S,I→→A成立。
(3)关系模式RDP(R,D,P)中,R表示医院的病房,D表示责任医务人员,P表示病人。假设每个病房住有多个病人,有多个责任医务人员负责医治和护理该病房的所有病人。按照语义有R→→D,R→→P成立。
5. 下面的结论哪些是正确的,哪些是错误的?对于错误的结论请给出理由或给出一个反例说明之。
(1)任何一个二目关系都是属于3NF的。√
(2)任何一个二目关系都是属于BCNF的。√
(3)任何一个二目关系都是属于4NF的。√
(5)若R.A→R.B,R.B→R.C,则R.A→R.C √
(6)若R.A→R.B,R.A→R.C,则R.A→R.(B, C) √
(7)若R.B→R.A,R.C→R.A,则R.(B, C)→R.A √
(8)若R.(B, C)→R.A,则R.B→R.A,R.C→R.A ×
反例:关系模式 SC(S#,C#,G) (S#,C#)→G,但是S# → G,C#→G