R = (J,K,L,M,N)
具有一组功能依赖关系{J->KL,LM->N,K->M,N->J}
。
我理解 BCNF 的定义。我相信不存在微不足道的功能依赖,也可能没有超级键。我不确定第二部分。您如何从字母中确定超级密钥?希望对此有一些意见。
R = (J,K,L,M,N)
具有一组功能依赖关系{J->KL,LM->N,K->M,N->J}
。
我理解 BCNF 的定义。我相信不存在微不足道的功能依赖,也可能没有超级键。我不确定第二部分。您如何从字母中确定超级密钥?希望对此有一些意见。
如果所有函数依赖的左侧属性的闭包包含所有关系属性,则该关系将采用 Boyce-Codd 范式 (BCNF) (J, K, L, M, N)
。换句话说,每个函数依赖的左侧属性都包含一个键。
让我们分析您的功能依赖关系:
J -> KL
. 然后K -> M
,然后LM -> N
和N -> J
。所以,J ->
KL
满足 BCNF。LM -> N
. 然后N -> J
,然后J -> KL
就是这样,我们拥有所有属性。K -> M
. 这种函数依赖显然违反了 BCNF,因为我们无法从依赖集中获得更多属性。N -> J
. 然后J -> KL
和K -> M
。它满足 BCNF。因此,第三个依赖违反了 BCNF,并且K
属性本身不是键。