关系数据理论练习题及答案(详细完整版)_第1页
关系数据理论练习题及答案(详细完整版)_第2页
关系数据理论练习题及答案(详细完整版)_第3页
关系数据理论练习题及答案(详细完整版)_第4页
关系数据理论练习题及答案(详细完整版)_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第一部分:首先,找到最小依赖集例如,存在依赖集:F=ABC,CA,BCD,ACDB,DEG,BEC,CGBD,CEAG,并且计算等价的最小依赖集。解决方案:1.简化依赖于右边的属性,结果是:F1=ABC,CA,BCD,ACDB,DE,DG,BEC,CGB,CGD,CEA,CEG 2.移除F1中依赖于左侧部分的冗余属性。对于CEA,因为CA成立,所以e是多余的;对于自动呼叫分配器B,因为(CD)=自动呼叫分配器,A是多余的。删除依赖项左侧的冗余依赖项后:F2=ABC,CA,BCD,CDB,DE,DG,BEC,CGB,CGD,CEG 3.删除F2中的冗余依赖项。对于重心B,重心B是多余的,因为(重心)=ABCEDG。删除依赖项左侧的冗余依赖项后:F3=ABC,CA,BCD,CDB,DE,DG,BEC,CGD,CEG CGB和CDB不能同时存在,但任何一个都可以删除,这表明最小依赖集不是唯一的。第二,寻求终结例如,计算关系模型R(U,F),其中U=A,b,C,D,E,I,F=AD,ABE,BIE,CDI,EC。解决方法:使X=AE,X(0)=AE;计算x(1);逐一扫描F集中的每一个函数依赖,找出F中左边的AE子集的函数依赖,结果是:AD,E C,所以x(1)=AEDC=acde;因为X(0)X(1)和X(1)U,求f中左边ACDE子集的函数依赖,结果是CD I。所以X(2)=ACDEI=ACDEI。虽然X(2) X(1),但f中未使用的函数依赖左属性没有X(2)的子集,因此不需要再计算它,即,(AE)=ACDEI。3.寻找候选键示例1:关系模式R(U,F),其中U=A,B,C,D,F=AB,CD,尝试找到此关系的候选键。解决方案:首先找到属性的闭包:(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,根据闭包的定义,ACA,ACB,ACB,ACD,AC ABCD=U来自合并规则;从候选码的定义中可以获得作为候选码的交流。求解后选关键词的理论和算法对于给定的关系式R(A1,A2,安)和函数依赖集f,其属性可分为四类:类L:只出现在函数F中的函数依赖于左属性;只出现在F中的函数依赖于正确的属性;类n:f的函数依赖于不出现在左右两边的属性;LR类:f的功能取决于左右两边出现的属性。定理1对于给定的关系模式R及其函数依赖集F,如果X(X属于R)是L类属性,那么X必须是R的任何候选键的成员示例1:关系模式R(U,F),其中U=A,B,C,D,F=AB,CD,尝试找到此关系的候选键。例2有一个关系模式R(A,B,c,D),它的函数依赖集F=DB,BD,ADB,ACD来查找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=AB,CD,EA,CED,尝试找到此关系的候选键。定理3对于给定的关系模式R及其函数依赖集F,如果X(X属于R)是N类的属性,那么X必须是R的任何候选键的成员例4提供了一个关系模型R(A,B,C,D,E,P),其函数依赖集F=AD,ED,DB,BCD,DCA寻找R的所有候选键推理对于给定的关系模式R及其函数依赖集F,如果X(X属于R)是一个由N个类和L个类组成的属性集,并且X包含R的所有属性,那么X必须是R的唯一候选键四、关系模式标准化程度判断(BCNF判断)示例5关系模式R(U,F),其中U=A,B,C,D,函数依赖集F=BD,ABC,尝试找出哪个范例R最高。解答:根据判断定理和推论,AB必须是候选码的一个成员,并且(AB)=ABCD=U,所以AB是候选码。然后是ABD,因为BD,非主属性对代码有部分依赖,所以最大值是1NF。示例6关系模式R(U,F),其中U=A,B,C,D,E,函数依赖集F=ABCE,EAB,CD,尝试找出哪种范式R最高。解答:根据判断定理和推论,属性D肯定不在候选码中,可以通过计算得到:(AB)=ABCDE=U,(E)=ABCDE=U,所以AB和E是候选码;因为在f中没有部分依赖,所以r至少属于2NF;因为ABC,ABE,CD,非主要属性对代码传输有依赖性,所以最高值为2NF。示例7关系模式R(U,F),其中U=A,B,C,函数依赖集F=AB,BA,AC,尝试找出哪个范例R最高。解答:根据判断定理和推论,属性C肯定不在候选码中,可以通过计算得到:(A)=ABC=U,(B)=ABC=U,因此A和B是候选代码;由于候选代码只有一个属性,并且没有部分依赖关系,因此R至少属于2NF;BA,AC,因为AB,不存在非主属性对代码转移的依赖,所以R也是3NF。因为f满足BCNF的定义,r也是BCNF。示例8关系模式R(U,F),其中U=A,B,C,函数依赖集F=AB,BA,CA,尝试找出哪个范例R最高。解答:根据判断定理和推论,属性C必须在候选码中,因为(C)=ABC=U,C是候选码;由于候选代码只有一个属性,并且没有部分依赖关系,因此R至少属于2NF;CA,AB,存在依赖于代码转移的非主要属性,因此R最高为2NF。示例9关系模式R(U,F),其中U=A,B,C,D,函数依赖集F=AC,DB,尝试找出哪个范例R最高。解答:根据判断定理和推论,属性AD必须在候选码中,因为(AD)=ABCD=U,AD就是候选码;然而,ADB、DB对代码有部分非主属性依赖,因此r高达1NF。示例10关系模式R(U,F),其中U=A,B,C,D,函数依赖集F=AC,CDB,尝试找出哪个范例R最高。解答:根据判断定理和推论,属性AD必须在候选码中,因为(AD)=ABCD=U,AD就是候选码;然而,ADC、AC的非主要属性部分依赖于代码,因此r高达1NF。第二部分:练习1:指出下面的关系模型是哪种范式(1)R(X,Y,Z) FD=XYZ典型的例子是我们的供应链(Sno,Cno,等级)参考答案: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它属于第三范式:因为代码(XZ)上不存在非主属性(Y)的部分函数依赖和转移函数依赖;然而,它不属于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 参考答案:典型示例学生(斯诺、斯奈姆、塞克斯)R(X,Y,Z)的候选码是X,非主要属性是Y和Z非主属性对代码不存在部分函数依赖和转移函数依赖,因此它属于三种范式。同样,只有代码起着决定性的作用,所以它也是BC范式(5)R(W,X,Y,Z) FD= XZ,WXY 参考答案:典型示例S_C(Sno、Cno、等级、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、等级、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的传递函数,它不是三种范式,而是最多两种范式此外,非主属性对代码不存在部分函数依赖,因此它属于两种范式。练习2:让我们建立一个关系模型,A-D,东-德,北-南,北-南,东-南.尝试找到:(1)r的候选代码(2)r所属的范式(3)将R分解为具有无损连通性的BCNF参考答案:(1)我们知道:欧共体-A-D-B因此,候选代码是EC,非主要属性是ABD(2)由于非主属性(B和D)对代码传递函数(EC)的依赖,三种范式没有答案,最多的是两种范式。此外,非主属性对代码不存在部分函数依赖,因此它是一种双范式。(3)分解成3种模式:R1(东、中、阿)FD=东、中、阿R2(阿,德)FD= A-DR3(D,B) FD=D-B练习3。有一个关系模型:教师(教师编号、教师姓名、电话号码、部门、借阅书号、书名、借阅日期、归还日期、备注)(1)老师是候选人吗?解释原因(2)关系模式的主要代码是什么?(3)在这个关系模型中是否存在部分函数依赖?如果是,请写下至少两个?(4)这种关系模型符合哪种范式?(5)将关系模型分解成3NF。参考溶液(1)教师编号不是候选代码。(2)假设一个人一天只能借一本书,主要代码是:教师编号、借阅书号、借阅日期;非主要属性包括:教师姓名、电话号码、部门、职称、返回日期和备注(3)存在。(教师编号、借阅图书编号、借阅日期)-教师姓名(教师号码、借阅图书号码、借阅日期)-教师电话号码(教师编号、图书编号、图书日期)-部门(教师编号、图书编号、图书日期)-标题(4)由于非主属性对代码的部分功能依赖,它没有达到两种范式,而只属于一种范式。(5)教师(教师编号、教师姓名、电话号码、部门)书籍(书籍编号、书籍名称)借阅(教师编号、图书编号、借阅日期、归还日期、备注)练习4:假设一个业务组在其数据库中有一个关系模式r(门牌号、商品号、数量、部门号、负责人),如有规定:(1)每个商店可以销售多种商品(每种商品都有一个编号);商店里的每种商品都只在一个部门出售。(2)每个商店的每个部门只有一个负责人;(3)每个商店对于每种商品只有一个库存数量;问题:(1)写出关系r的基本函数依赖关系(2)找出r的候选码(3)如果r的范式不属于3NF,则它被分解成3NF参考答案:(1)每家商店的每种商品只在一个部门销售:商店编号、商品编号-部门编号每个商店的每个部门只有一个负责人:商店编号、部门编号-负责人每个商店对每个商品只有一个库存数量:商店编号,商品编号-库存(2)主要代码是:店铺号、商品号、非主要属性有:数量、部门号、负责人(3)由于非主要属性(负责人)对主要编码(商品编号、店铺编号)的传递函数依赖因此,它还没有达到三种范式,只有两种范式。分解关系模式:R1(商店号、商品号、部门号、数量)R2(商店号、部门号、负责人)分解之后,它实际上已经达到了业务连续性范式。第三部分:多重选择1.为了设计更好的绩效关系模型,必须进行标准化,标准化的主要理论基础是()。A.关系规范化理论C.数理逻辑d .关系运算理论2.规范化理论是关系数据库逻辑设计的理论基础。根据这个理论,关系数据库中的关系必须满足以下要

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论