数据库范式
第一范式1NF
字段具有原子性,保证字段不可分
数据库表中的所有字段都是单一属性,不可再分
第二范式2NF
在第一范式的基础上,非主属性完全依赖于码
数据库表每一行必须被唯一标识
- 必须有一个主键
- 没有包含在主键的列必须完全依赖于主键,且不能只依赖于主键的一部分
第三范式
在第二范式的基础上,消除对主键的传递依赖
每一个非主属性都不传递依赖于候选键,也就是说数据表中不包含已在其他表中已包含的非主键信息,信息不冗余
BCNF
主属性不依赖于主属性
数据库表中不存在任何字段对任何一候选关键字段的传递依赖
- 所有非主属性对每一个码都是完全函数依赖
- 所有的主属性对于每一个不包含它的码,也是完全函数依赖
- 没有任何属性完全函数依赖于非码的任意一个组合