是否存在违反1NF的任何功能依赖的示例?

时间:2016-12-08 20:50:27

标签: database relational-database normalization denormalization functional-dependencies

功能依赖是否可能违反1NF?例如

R={A,B,C,D,E} F=Any FD that violates 1NF

什么样的功能依赖会违反1NF?我理解违反2NF,3NF和BCNF的函数依赖的例子,但我从未见过FD违反1NF的例子。这甚至可能吗?

1 个答案:

答案 0 :(得分:1)

与其他普通形式不同,1NF关注的是结构而不是功能依赖关系。所以对你的问题的简单回答是否定的。

然而,关于1NF是否排除了关系值属性(RVAs)的可能性存在争议。如果您采用视图(尽可能多的人),1NF禁止使用RVAs,则1NF关系无法满足基于关系值属性的任何功能依赖性。通过对规则的解释,这些FD将被1NF禁止。如果说FD本身是违反1NF的话会延伸词语的含义,但是说满足这样一个FD的关系就是违法行为。

或者,您可以认为,如果它具有任何值,那么1NF应该意味着数据总是表示为关系的要求。根据这种解释,没有充分的理由排除RVA的可能性 - 并且 - 鉴于它们的排除可能排除一些可能重要的FD - 有充分的理由允许它们。这是我的观点,尽管即使是那些考虑过这个问题的人也可能是少数人的观点。如果您同意,那么您的问题的答案明确