1、函数依赖第1页第2页第3页第4页第5页第6页第7页第8页设R(U)是属性U上一个关系模式,X和Y均为U=A1,A2,An子集,r为R任一关系,假如对于r中任意两个元组u,v,只要有uX=vX,就有uY=vY,则称X函数决定Y,或称Y函数依赖于X,记为XY。(补充)第9页第10页第11页第12页第13页第14页第15页第16页第17页第18页第19页第20页假如第21页第22页第23页第24页第25页第26页第27页第28页第29页第30页第31页第32页第33页第34页第35页第36页第37页第38页怎样求关系模式中候选键关系模式R(U,F),其中UW,X,Y,Z,F=WXY,WX,XZ,YW
2、。关系模式R候选建是?第39页怎样求关系模式中候选键解法:从函数依赖集出发,把全部属性分为4类 1、L类:全部出现在函数依赖左半部 2、R:全部出现在函数依赖右半部 3、LR:出现在函数依赖左右两边 4、N:不出现在函数依赖中 可能成为候选键有L类,LR类和N类 对于L类,求出它闭包,若包含全部属性,则说明其为候选键,且为唯一候选键。对于LR类,求出其闭包,若包含全部属性,则为候选键,若不包含,在找出其中一个属性结合。对于N类,直接加至候选键即可。第40页其中UW,X,Y,Z,F=WXY,WX,XZ,YWL:无 R:Z LR:w,x,y N:无 先排除z 在LR中,w闭包为w,y,z,x x闭
3、包为x,z y闭包为y,w wx闭包为w,x,y,z wy闭包为w,y xy闭包为x,y,z,w wxy闭包为x,z,y,w 由此可见,候选键为w,wx,xy,xyw 可从候选键中选取一个作为主键。第41页设相关系模式R(A,B,C,D,E,F)其函数依赖集为FED,CB,CEF,BA,求候选码第42页设相关系模式R(A,B,C,D,E,F)其函数依赖集为FED,CB,CEF,BA,求候选码L:C,ER:A,D,FLR:BN:无第43页设相关系模式R(A,B,C,D,E,F)其函数依赖集为FED,CB,CEF,BA,求候选码C闭包为A,B,C E闭包为D,E CE闭包为A,B,C,D,E 由此
4、可见,候选键为CE第44页关系模式R(A,B,C,D)函数依赖集为F=ACB,则R候选键为()。第45页关系模式R(A,B,C,D)函数依赖集为F=ACB,则R候选键为()。ACD 因为 ACB 所以 ACACB 所以 ACDABCD 所以R候选码是ACD第46页第47页第48页第49页第50页第51页第52页第53页第54页第55页第56页第57页第58页第59页第60页第61页设相关系模式R(U,F),其中U=A,B,C,D,E,I F=A-D,AB-E,BI-E,CD-I,E-C计算(AE)闭包第62页设相关系模式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在F中找出左边是AE子集函数依赖,其结果是:A-D,E-C,所以X(1)=X(0)UDC=ACDE,显然X(1)不等于X(0)第63页设相关系模式R(U,F),其中U=A,B,C,D,E,I F=A-D,AB-E,BI-E,CD-I,E-C计算(AE)闭包在F中找出左边是AEDC子集函数依赖,其结果是CD-I,所以X(2)=ACDEI,但F中未用过函数依赖左边属性已没有X(2)子集,即(AE)闭包=ACDEI第64页第65页第66页第67页第68页第69页第70页第71页第72页第73页第74页