语句--“如果表只包含一个候选键,则3NF和BCNF是等效的。”
在下面的图像中,关系是3nf,而不是bcnf。但是它只有一个候选键,即AB,所以根据上面的声明,它要么是(3nf,bcnf),要么是空的。有人能解释一下我在这里错过了什么吗?

发布于 2015-05-09 12:09:40
在简单的单词中,给定的单词可以写成
AB->C AB->D C->B
在上述关系中,A,B,C是素数属性,D是非素数属性。
在这里,AB和AC是最小的超级键
3NF和BCNF的条件
X->Y 对于BCNF,X应该是超级键,无论Y是素数还是非素数属性。 对于3NF,只有当Y是非素数的Y时,X才应该是超级键,否则是可选的1。
BCNF and 3NF are equivalent when there are no **non-prime** attributes希望能帮上忙。
发布于 2017-04-27 17:25:27
“如果表只包含一个候选键,则3NF和BCNF等效。”
下半场,“3NF和BCNF是等价的”,并不意味着什么。你觉得这意味着什么?正常的形态是不同的东西。BCNF需要比3NF更多的限制性条件。因此,当关系在BCNF中时,它也必须在3NF中。因此,一个关系可以同时以两种范式存在。
这句话大概是想说,“如果一个表只包含一个候选键”,那么如果它在3NF中,那么它也是在BCNF中。这是正确的,因为一个表在3NF中,而不是在BCNF中,必须有重叠的CKs (候选键)。这里,确定所有不包含较小的属性集的属性集是AB & AC。重叠的地方。这张表是3NF格式的,但它不在BCNF中。
(请注意,持有的FDs不仅仅是被明确告知hold的FDs,还包括当它们按照Armstrong的公理执行时必须保持的所有FDs。)
https://stackoverflow.com/questions/30010923
复制相似问题