您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 关系数据理论练习题及答案(详细完整版)
第一部分:一、求最小依赖集例:设有依赖集:F={AB→C,C→A,BC→D,ACD→B,D→EG,BE→C,CG→BD,CE→AG},计算与其等价的最小依赖集。解:1、将依赖右边属性单一化,结果为:F1={AB→C,C→A,BC→D,ACD→B,D→E,D→G,BE→C,CG→B,CG→D,CE→A,CE→G}2、在F1中去掉依赖左部多余的属性。对于CE→A,由于C→A成立,故E是多余的;对于ACD→B,由于(CD)+=ABCEDG,故A是多余的。删除依赖左部多余的依赖后:F2={AB→C,C→A,BC→D,CD→B,D→E,D→G,BE→C,CG→B,CG→D,CE→G}3、在F2中去掉多余的依赖。对于CG→B,由于(CG)+=ABCEDG,故CG→B是多余的。删除依赖左部多余的依赖后:F3={AB→C,C→A,BC→D,CD→B,D→E,D→G,BE→C,CG→D,CE→G}CG→B与CD→B不能同时存在,但去掉任何一个都可以,说明最小依赖集不唯一。二、求闭包例:关系模式R(U,F),其中U={A,B,C,D,E,I},F={A→D,AB→E,BI→E,CD→I,E→C},计算(AE)+。解:令X={AE},X(0)=AE;计算X(1);逐一扫描F集合中各个函数依赖,在F中找出左边是AE子集的函数依赖,其结果是:A→D,E→C。于是X(1)=AE∪DC=ACDE;因为X(0)≠X(1),且X(1)≠U,所以在F中找出左边是ACDE子集的函数依赖,其结果是:CD→I。于是X(2)=ACDE∪I=ACDEI。虽然X(2)≠X(1),但在F中未用过的函数依赖的左边属性已没有X(2)的子集,所以不必再计算下去,即(AE)+=ACDEI。三、求候选键例1:关系模式R(U,F),其中U={A,B,C,D},F={A→B,C→D},试求此关系的候选键。解:首先求属性的闭包:(A)+=AB,(B)+=B,(C)+=CD,(D)+=D(AB)+=AB,(AC)+=ABCD=U,(AD)+=ABD,(BC)+=BCD,(BD)+=BD,(CD)+=CD(ABD)+=ABD,(BCD)+=BCD,因(AC)+=ABCD=U,且(A)+=AB,(C)+=CD,由闭包的定义,AC→A,AC→B,AC→B,AC→D,由合并规则得AC→ABCD=U;由候选码的定义可得AC为候选码。后选关键字的求解理论和算法对于给定的关系R(A1,A2,…,An)和函数依赖集F,可将其属性分为四类:L类:仅出现在F的函数依赖左部的属性;R类:仅出现在F的函数依赖右部的属性;N类:在F的函数依赖左右两边均未出现的属性;LR类:在F的函数依赖左右两边均出现的属性。定理1对于给定的关系模式R及其函数依赖集F,若X(X属于R)是L类属性,则X必为R的任一候选关键字的成员。例1:关系模式R(U,F),其中U={A,B,C,D},F={A→B,C→D},试求此关系的候选键。例2设有关系模式R(A,B,C,D),其函数依赖集F={D→B,B→D,AD→B,AC→D},求R的所有候选键。推论对于给定的关系模式R及其函数依赖集F,若X(X属于R)是L类属性,且X+包含了R的全部属性,则X必为R的惟一候选关键字。定理2对于给定的关系模式R及其函数依赖集F,若X(X属于R)是R类属性,则X不在任何候选关键字中。例3关系模式R(U,F),其中U={A,B,C,D,E,P},F={A→B,C→D,E→A,CE→D},试求此关系的候选键。定理3对于给定的关系模式R及其函数依赖集F,若X(X属于R)是N类属性,则X必为R的任一候选关键字的成员。例4设有关系模式R(A,B,C,D,E,P),其函数依赖集F={A→D,E→D,D→B,BC→D,DC→A},求R的所有候选关键字。推论对于给定的关系模式R及其函数依赖集F,若X(X属于R)是N类和L类组成的属性集,且X+包含了R的全部属性,则X必为R的惟一候选关键字四、关系模式规范化程度的判断(在BCNF内判断)例5关系模式R(U,F),其中U={A,B,C,D},函数依赖集F={B→D,AB→C},试求R最高属于第几范式。解:根据判定定理及推论得:AB必是候选码的成员,且(AB)+=ABCD=U,所以AB为候选码。则AB→D,又因B→D,存在非主属性对码的部分依赖,所以最高为1NF。例6关系模式R(U,F),其中U={A,B,C,D,E},函数依赖集F={AB→CE,E→AB,C→D},试求R最高属于第几范式。解:根据判定定理及推论得:属性D肯定不在候选码中,通过计算可得:(AB)+=ABCDE=U,且(E)+=ABCDE=U,所以AB、E为候选码;由于F中不存在部分依赖,故R至少属于2NF;因AB→C,AB→E,C→D,存在非主属性对码的传递依赖,所以最高为2NF。例7关系模式R(U,F),其中U={A,B,C},函数依赖集F={A→B,B→A,A→C},试求R最高属于第几范式。解:根据判定定理及推论得:属性C肯定不在候选码中,通过计算可得:(A)+=ABC=U,且(B)+=ABC=U,所以A、B为候选码;由于候选码仅有一个属性,不存在部分依赖,故R至少属于2NF;B→A,A→C,由于A→B,所以不存在非主属性对码的传递依赖,所以R也是3NF。又因为F满足BCNF的定义,故R也是BCNF。例8关系模式R(U,F),其中U={A,B,C},函数依赖集F={A→B,B→A,C→A},试求R最高属于第几范式。解:根据判定定理及推论得:属性C肯定在候选码中,又因(C)+=ABC=U,所以C为候选码;由于候选码仅有一个属性,不存在部分依赖,故R至少属于2NF;C→A,A→B,存在非主属性对码的传递依赖,所以R最高为2NF。例9关系模式R(U,F),其中U={A,B,C,D},函数依赖集F={A→C,D→B},试求R最高属于第几范式。解:根据判定定理及推论得:属性AD肯定在候选码中,又因(AD)+=ABCD=U,所以AD为候选码;而AD→B,D→B,存在非主属性对码的部分依赖,所以R最高为1NF。例10关系模式R(U,F),其中U={A,B,C,D},函数依赖集F={A→C,CD→B},试求R最高属于第几范式。解:根据判定定理及推论得:属性AD肯定在候选码中,又因(AD)+=ABCD=U,所以AD为候选码;而AD→C,A→C,存在非主属性对码的部分依赖,所以R最高为1NF。第二部分:练习一:指出下列关系模式是第几范式(1)R(X,Y,Z)FD={XYZ}其典型实例就是我们的SC(Sno,Cno,Grade)参考解答:R(X,Y,Z)的主码为XY,非主属性为Z。关系模式R(X,Y,Z)中不存在非主属性对码的部分函数依赖——属于二范式关系模式R(X,Y,Z)中不存在非主属性对码的传递函数依赖——属于三范式关系模式R(X,Y,Z)中起决定作用的只有码——属于BC范式故在函数依赖范围内,关系模式R(X,Y,Z)属于BC范式(2)R(X,Y,Z)FD={XZY,YZ}参考解答:R(X,Y,Z)的主码为XZ,非主属性为Y属于第三范式:因为其中不存在非主属性(Y)对码(XZ)的部分函数依赖和传递函数依赖;但不属于BC范式:因为起决定作用的除了码以外还有非主属性(Y)(3)R(X,Y,Z)FD={YZ,YX,XYZ}参考解答:R(X,Y,Z)的候选码为Y和X,非主属性为Z不存在非主属性对码的部分函数依赖和传递函数依赖,故属于三范式又,起决定作用的只有码,所以也是BC范式(4)R(X,Y,Z)FD={XY,XZ}参考解答:典型实例Student(Sno,Sname,Ssex)R(X,Y,Z)的候选码为X,非主属性为Y和Z不存在非主属性对码的部分函数依赖和传递函数依赖,故属于三范式又,起决定作用的只有码,所以也是BC范式(5)R(W,X,Y,Z)FD={XZ,WXY}参考解答:典型实例S_C(Sno,Cno,Grade,,Cname)R(W,X,Y,Z)的候选码为WX,非主属性为Y和Z因为非主属性Z不是完全依赖于码(WX),而是依赖于码中的一部分(X),所以存在非主属性对码的部分函数依赖,故没有达到二范式,仅属于一范式(6)R(A,B,C,D),FD={BD,ABC}参考解答:典型实例S_C(Sno,Cno,Grade,,Cname)R(W,X,Y,Z)的候选码为WX,非主属性为Y和Z因为非主属性Z不是完全依赖于码(WX),而是依赖于码中的一部分(X),所以存在非主属性对码的部分函数依赖,故没有达到二范式,仅属于一范式(7)R(A,B,C)FD={AB,BA,CA}参考解答:典型实例:若规定一个系的学生都住在一个住处,一个住处也只能入住一个系,则典型实例为:S_Loc(Sdept,Sloc,Sno)主码为C,非主属性为AB,因存在非主属性(B)对码C的传递函数依赖,故不是三范式,最多是二范式又,不存在非主属性对码的部分函数依赖,故属于二范式练习二:设关系模式R(A,B,C,D,E),FD={A-D,E-D,D-B,BC-D,EC-A}。试求:(1)R的候选码(2)R所属的范式(3)将R分解为BCNF,且具有无损连接性参考解答:(1)可知:EC-A-D-B所以:候选码为EC,非主属性为ABD(2)因存在非主属性(B和D)对码(EC)的传递函数依赖,故未答三范式,最多是二范式又,不存在非主属性对码的部分函数依赖,所以是二范式(3)分解为3个模式:R1(E,C,A)FD={EC-A}R2(A,D)FD={A-D}R3(D,B)FD={D-B}练习三。设有关系模式:TEACHER(教师编号,教师姓名,电话,所在部门,借阅图书编号,书名,借书日期,还书日期,备注)(1)教师编号是候选码吗?说明理由(2)该关系模式的主码是什么?(3)该关系模式是否存在部分函数依赖?如果存在,请写出至少两个?(4)该关系模式满足第几范式?(5)将该关系模式分解为3NF。参考解答(1)教师编号不是候选码。(2)假定对任一本书一个人一天只能借一次,则主码为:教师编号,借阅图书编号,借书日期;非主属性为:教师姓名、电话、所在部门、书名、还书日期、备注(3)存在。(教师编号,借阅图书编号,借书日期)-教师姓名(教师编号,借阅图书编号,借书日期)-教师电话(教师编号,借阅图书编号,借书日期)-所在部门(教师编号,借阅图书编号,借书日期)-书名(4)因为存在非主属性对于码的部分函数依赖,所以,未达到二范式,只属于一范式。(5)教师(教师编号,教师姓名,电话,所在部门)图书(图书编号,图书名)借阅(教师编号,图书编号,借书日期,还书日期,备注)练习四:假设某商业集团数据库中有一关系模式R(商店编号,商品编号,数量,部门编号,负责人),若规定:(1)每个商店能销售多种商品(每种商品有一个编号);商店的每种商品只在一个部门销售;(2)每个商店的每个部门只有一个负责人;(3)每个商店的每种商品只有一个库存数量;问题:(1)写出关系R的基本函数依赖(2)找出R的候选码(3)R的范式,若不属于3NF,则分解为3NF参考解答:(1)每个商店的每种商品只在一个部门销售:商店编号,商品编号-部门编号每个商店的每个部门只有一个负责人:商店编号,部门编号-负责人每个商店的每种商品只有一个库存数量:商店编号,商品编号-库存量(2)主码为:商店号,商品编号,非主属性为:数量,部门编号,负责人(3)因存在非主属性(负责人)对主码(商品编号,商店号)的传递函数依赖故未达到三范式,只达到二范式。分解该关系模式:R1(商店编号,商品编号,部门编号,数量)R2(商店编号,部门编号,负责人)分解后其实已达到BC范式。第三部分:单项选择题1.为了设计出性能较优的关系模式,必须进行规范化,规范化主要的理论依据是()。A.关系规范化理论B.关系代数理论C.数理逻辑D.关系运算理论2.规范化理论是关系数据库进行逻辑设计的理论依据,根据这个理论,关系数据库中的关系必须满足:每一个属性都
本文标题:关系数据理论练习题及答案(详细完整版)
链接地址:https://www.777doc.com/doc-4593889 .html