R = (J,K,L,M,N)
的 {J->KL,LM->N,K->M,N->J}
。
我理解BCNF的定义。我相信没有普通的功能依赖,也可能没有超级密钥。我不确定第二部分。你如何从字母中确定超级密钥?会对此有所了解。
答案 0 :(得分:1)
如果所有函数依赖项的左侧属性的闭包含有所有关系属性(J, K, L, M, N)
,则该关系将采用Boyce-Codd Normal Form(BCNF)。换句话说,每个函数依赖项的左侧属性都包含一个键。
让我们分析你的功能依赖:
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
属性本身并不是关键。