最小的超级密钥是否保证它是候选密钥?

时间:2016-03-04 05:24:42

标签: database functional-dependencies database-theory

  

确定关系R(ABCDEF)的候选键和超级键   FD' s:AEF→C,BF→C,EF→D和ACDE→F

这是我书中的一个问题。该书声称候选键是ABCDE和ABEF。根据我的理解,候选键是最小的超级键,ABEF上的闭包测试完美地捕获了关系R.因为ABEF更多"最小"比ABCDE,我认为唯一的候选键实际上只是ABEF。我将授予ABCDE是超级密钥,但不是候选密钥。有人可以解释为什么我在这里错了吗?或者这本书有可能是错的吗?

1 个答案:

答案 0 :(得分:3)

“最小超级密钥”表示具有所有其他(超级)密钥的最小属性数量的超级密钥,但是(超级)密钥,以便从中删除任何属性,丢失作为关键的属性,即确定关系的所有属性。例如,在您的情况下,

ABCDE+ = {ABCDEF}

but:

ABCD+ = ABCD
ABCE+ = ABCE
ABDE+ = ABDE
ACDE+ = ACDEF
BCDE+ = BCDE

所以没有ABCDE的正确子集确定所有属性,因此它是 minimal 超级密钥,即候选密钥。