努力查看它们之间的差异。我知道我们说2NF是“整个密钥”,而3NF是“除了密钥”。
引用Smashery的以下出色答案:What are 1NF, 2NF and 3NF in database design?
用于3NF的示例与2NF完全相同-其字段仅取决于一个键属性。 3NF的示例与2NF的示例有何不同?
谢谢
最佳答案
假设某些关系满足形式A-> B的非平凡的函数依赖关系,其中B是非素数属性。
如果A不是超键而是候选键的适当子集,则违反2NF
如果A不是超键,则违反3NF
您已经发现3NF要求只是2NF要求的一种特殊情况(但并非如此特殊)。 2NF本身不是很重要。重要的问题是A是否为超键,而不是A是否恰好是候选键的一部分。
关于database - 标准化-2NF与3NF,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6023091/