我很难理解这三种正常形态。
3 NF: 2 NF +无跃迁
所以,如果我有,
A -> B
B -> C那么,上述是一种过渡关系,因此不会在3NF?我正确理解了吗?
但在数据库规范化到底是做什么的?的答案中,paxdiablo说,
Third normal form (3NF) - 2NF and every non-key column in a table depends on nothing but the key.据此,将在3NF。我哪里出问题了?
发布于 2015-07-25 17:50:07
一个关系在3NF中,如果它在2NF中,并且:
(质数表示它属于一个键)。
例如,参见维基百科。
如果只保留第一个条件,即:Boyce-Codd范式中的关系:
因此,在您的示例中,如果关系只有三个属性A、B和C以及两个依赖项,则它不在3NF中,因为C不是素数,并且依赖于B,而B不是一个键。另一方面,如果有其他属性,而C是键或键的一部分,那么它可能在3NF中(但这取决于其他函数依赖项,这应该满足上述条件)。
2NF表示,每个非素属性取决于每个候选键,而不是其中的一部分。例如,如果一个关系具有属性A、B和C,那么唯一的键是AB和B -> C,那么这种关系不在2NF中。
发布于 2015-08-06 06:03:37
您正在尝试的第2部分第3部分定义是:
3NF的另一个定义是:
那么BCNF是:
见这个答案。
如果示例的唯一列是A、B和C,并且您的两个FDs构成最小覆盖,那么唯一的候选键是A,而C依赖于非超级键,因此它不在3NF (或BCNF)中。
你的用词太随便了,所以你的句子没有任何意义。学习术语以及在定义中如何使用它们来指代各种事物,并以这种方式引用适当的事物。并从一本(有信誉的)教科书中得到你的定义。
https://stackoverflow.com/questions/31627438
复制相似问题