第五章关系数据理论
一、选择题
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.ABB.BE C.CDD.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.1NFB.2NF C.3NFD.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.可能是1NFB.必定是1NF C.必定是3NFD.必定是BCNF
7.关系模式R中的属性全是主属性,则R的最高范式必定是(C)。
A.1NFB.2NF C.3NFD.BCNF
8.消除了部分函数依赖的1NF的关系模式,必定是(B)。
A.1NFB.2NF C.3NFD.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.1NFB.2NF C.3NFD.BCNF
14.在关系数据库中,任何二元关系模式的最高范式必定是(D)。
A.1NFB.2NF C.3NFD.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.1NFB.2NF C.3NFD.BCNF
27.设有关系模式R(S,D,M),其函数依赖集:F={S→D,D→M},则关系模式R的规范化程度最高达到(B)。
A.1NFB.2NF C.3NFD.BCNF
28.设有关系模式R(A,B,C,D),其数据依赖集:F={(A,B)→C,C→D},则关系模式R的规范化程度最高达到(B)。
A.1NFB.2NF C.3NFD.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∈YB.Y∈XC.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.CB.(H,S)C.(H,R)D.(H,T)
(2)关系模式A的规范化程度最高达到(B)。
A.1NFB.2NFC.3NFD.BCNF
(3)现将关系模式A分解为两个关系模式A1(C,T),A2(H,R,S),则其中A1的规范化程度达到(D)。
A.1NFB.2NFC.3NFD.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无
DD#和DN无无
PPN无无
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的每一个值Mi,S有一个完整的集合与之对应而不问C取何值,所以M→→S。由于C与S的完全对称性,必然有M→→C成立。
MSC
M1S1C1
M1S1C2
M1S2C1
M1S2C2
………………
(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