DBMS 中的传递依赖是什么?
如果X不是候选键或超级键并且Y是非键,则函数依赖X->Y是传递依赖attribute(s)。
示例1
设一个关系R(A,B,C)
因此,关键属性=A和非关键属性=B,C。
B->C是传递依赖。
示例2
让我们考虑另一个例子,其中关系是R(A,BCD)
因此,关键属性=A、B和非关键属性=C、D。
那么,C->D是一个传递依赖
AB->D不是传递依赖
C->DB不是传递依赖。
问题
AR(ABCDEF)与F的关系:{AB->C,C->A,B->DE,ABD->F}。找到传递依赖。
解决方案
AB+=ABCDE=>AB是候选键
C+=CA
B+=BDE
ABD+=ABDFCE=>ABD不是候选键[因为AB是候选键]
=>关键属性={A,B}和非关键属性={C,D,E}
AB->C不是传递依赖
C->A不是传递依赖
B->DE是一个传递依赖[因为,B不是候选键/超级键,而DE是一个非键属性}。
ABD->F不是传递依赖。[因为,ABD是一个超级键]。
传递依赖的例子
考虑下表-
依赖关系如下-
{Book} -> {Book_Author} {Book_Author} does not -> {Book} {Book_Author} -> {Age_of_Author}
因此,根据传递性,{Book}->{Age_of_Author}。所以,如果知道这本书,那么作者的年龄也就知道了。