范式
关系数据库中的关系要满足一定要求的,满足不同程度的要求的为不同的范式。
各种范式之间的关系
5NF⊂4NF⊂BCNF⊂3NF⊂2NF⊂1NF
1NF:确保每列保持原子性
作为一个二维表,关系要符合一个最基本的田间,每个分量必须是不可分的数据项,即具有原子性。
2NF:确保表中的每列都和主键相关
在第一范式的基础上,没有非主属性对于码的部分函数依赖。即每个非主属性完全依赖于任何一个候选码
3NF:确保每列都和主键列直接相关,而不是间接相关
在第二范式基础上,不存在非主属性对码的传递函数依赖。
BCNF与3NF差别:
3NF——只消除非主属性对主属性的传递依赖;
BCNF——消除所有属性对主属性的传递依赖。