规范化规则的摘要

本节说明了以下范式:
第一范式
如果表不包含重复列,那么它符合第一范式。
第二范式
如果表符合第一范式并且只包含依赖于整个(主)键的列,那么该表符合第二范式。
第三范式
如果表符合第二范式并且只包含以非传递方式依赖于主键的列,那么该表符合第三范式。

按照 E. F. Codd(关系数据库的发明者)的规定,当遵循这些规则时,模型的表满足第三范式。当表不满足第三范式时,模型中会存在冗余数据或在尝试更新表时会发生问题。

如果在模型中找不到放置遵循这些规则的属性的位置,那么可能是发生了下列其中一个错误:
  • 该属性不具有良好的定义。
  • 该属性是派生的,不是直接的。
  • 该属性实际上是实体或关系。
  • 模型中缺少某些实体或关系。