如何从功能依赖中确定键
How to determine keys from functional dependencies
我正在尝试找到关系的键
R = ABCDE,具有函数依赖性
AB->C, C->D, C->E, D->A, E->B
我知道当依赖项右侧缺少某些属性时如何找到键。
但是这里所有的属性都出现在右边。
我不确定如何找到密钥,也找不到针对此特定示例的解释。
我的回答基于 and https://djitz.com/neu-mscs/answers-to-candidate-key-hard-questions/。
(1) AB -> C
(2) C -> D
(3) C -> E
(4) D -> A
(5) E -> B
AB+ = (1) ABC = (2, 3) ABCDE
C+ = (2, 3) CDE = (4) ACDE = (5) ABCDE
D+ = = (4) AD
E+ = = (5) BE
到目前为止,我们有候选人(AB, C)
。
进一步探索:
D+ = AD => DAB+ = ABCDE
E+ = BE => EAB+ = ABCDE
因此我们的候选人是(AB, C, DAB, EAB)
我正在尝试找到关系的键 R = ABCDE,具有函数依赖性 AB->C, C->D, C->E, D->A, E->B
我知道当依赖项右侧缺少某些属性时如何找到键。 但是这里所有的属性都出现在右边。 我不确定如何找到密钥,也找不到针对此特定示例的解释。
我的回答基于
(1) AB -> C
(2) C -> D
(3) C -> E
(4) D -> A
(5) E -> B
AB+ = (1) ABC = (2, 3) ABCDE
C+ = (2, 3) CDE = (4) ACDE = (5) ABCDE
D+ = = (4) AD
E+ = = (5) BE
到目前为止,我们有候选人(AB, C)
。
进一步探索:
D+ = AD => DAB+ = ABCDE
E+ = BE => EAB+ = ABCDE
因此我们的候选人是(AB, C, DAB, EAB)