关系数据库范式理解
首先理解主属性和键基本概念
关系中所有键属性的集合,就是主属性。
一个键可以由一个或多个属性的集合组成。
一个关系中可以由一个以上的键。
如果关系中都是主属性,则至少满足第三范式。
1NF
定义:属性值的原子性,即属性列不可再分
2NF
定义:所有非主属性完全依赖于每个键
主要针对组合键
关系中不存在:
- 主属性非主属性
3NF
定义:没有非主属性传递依赖于键
关系中不存在:
- 主属性非主属性(第二范式)
- 非主属性非主属性
BCNF
定义:没有任意属性传递依赖于键
关系中不存在:
- 主属性非主属性(第二范式)
- 非主属性非主属性(第三范式)
- 不允许有组合键(前提:有多个键)