这是2NF吗?

时间:2018-01-27 07:57:07

标签: database database-normalization functional-dependencies

我正在研究一些问题,并发现这种关系R(A,B,C,D,E)与FD {A - > B,B - > A,B - > E,AC - > d}。 我一直在努力发现它是在3NF。

但我遇到的问题文件的解决方案关键是它在1NF。根据它,B - > E是部分依赖,所以R不能在2NF。任何人都可以向我解释这背后的逻辑吗?

1 个答案:

答案 0 :(得分:0)

如果任何非素数(即不属于候选键)属性在功能上完全依赖于候选键,则关系为2NF。

此定义意味着,如果可以派生依赖项X → A,其中A不是主要属性,而X是候选键的正确子集,则此类依赖性违反2NF。

您的示例就是这样:候选键是ACBC,因此DE是非素数属性;依赖项B → E有一个决定因素,它不是候选键,而只是一个键的子集,因此该关系不在2NF中。

最后请注意,2NF仅具有历史意义,并且仅针对BCNF,3NF和更高的正规形式,在许多书籍(以及正式算法)中讨论了规范化过程。