关系数据库理论补充资料

关系数据库理论补充资料,第1张

关系数据库理论补充资料,第2张

函数依赖和属性关系如果两个属性之间是多对多的关系,那么它们之间就不存在函数依赖。
有属性集X,Y和关系模式R:若X,Y为1: 1(如学校和校长),则X和Y之间存在函数依赖关系X->Y和Y->X .若X,Y为M: 1(如学号和姓名),则存在函数依赖关系X-> Y .若X,Y
例1:在关系模型中,若属性A和B之间存在一对一的关系 说_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _--> B d .以上都不正确。 正确答案是:。C
例2:当属性B的函数依赖于A时,属性A与B的关系是_ _ _ _ _ _ _ _ _ _ _。A.1对多B .多对一c .多对多d .以上都不正确:B
对于给定的关系R (A11)其属性可分为四类:类L:类R:类N:类Lr:类Lr:类Lr:类Lr:类Lr:类Lr:类Lr:类LR:类LR:类LR:类LR:对于给定的关系模式R及其函数依赖集F, 如果X是R的L类属性,那么X一定是R的任意键代码的成员.
推论:对于给定的关系模式R及其函数依赖集F,如果X是R的L类属性,X+包含R的所有属性,那么X一定是R的键.
例; 有一个关系模式R(A,B,c,D),它的函数依赖集F={D->B,B->D,AD->B,AC->D}。求r的所有关键代码.
解法:通过考察F,发现A和C都是L类属性。由上述定理可知,AC必是R的键码,且由于AC+=ABCD,AC为R的键码
求键码A+=A,B+=B,C+=C,D+=DB AB+=ABD,AC+=ABCD,AD+=ABD,BC+=BCD,BD+=BD,CD+=CDB ABC+=ABCD。ADC+=ABCD ABCD+=ABCD考察上面计算闭包的结果,可以知道超级键是AC,ABC,ADC,ABCD。a,C都包含在所有的超级键里,AC是键码。这两种方法得到的结果是一样的。显然,对于属性较多的R,使用前一种方法要简单得多。每个人都应该掌握前一种方法。
上例中没有class R属性,B和D都是class LR属性。
定理:对于给定的关系模式R及其函数依赖集F,若X是R的类R属性,则X不是R的任何键的成员.
定理:对于给定的关系模式R及其函数依赖集F,若X是R的N类属性,则X一定是R的任何键代码的成员.
例:有一个关系模式R(A,B,C,D,E,P),R的函数依赖集F={A->D求R的所有关键码.
解法:通过考察F,发现属性E和C都是L类属性,所以E和C一定在R的任意键中.
并且由于属性P是N类属性,P也在R的任意键中.
并且CEP+=ABCDEP,所以CEP是R的键.
推论:对于给定的关系模式R及其函数依赖集F, 如果X是R的类N和类L组成的属性集,X+包含R的所有属性,那么X就是R的关键代码
关系模式的范式必须透彻理解1NF、2NF、3NF和BCNF的定义。 另外,记住任何二元关系都是BCNF。例:下面的关系R是_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _的 _
可以看出,非主属性的厂商对关键码物料号有传输依赖。 但是不存在对键码的部分依赖。
所以关系不是3NF,而是2NF。

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » 关系数据库理论补充资料

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情