1NF
1NF强调属性的原子性,是其它范式的基础,不满足1NF的数据库模式不能称为关系数据库。
2NF
关系模式R满足1NF,且每一个非主属性都完全函数依赖于R的候选码。
3NF
在满足2NF的前提下,不存在非主属性传递依赖于R的候选码。
2NF和3NF均考察的是非主属性。
判断是否为3NF的另外一种方法:
如果一个关系R是3NF,则对于每一个R的非平凡函数依赖,X -> A,需要满足以下条件之一
1. X是R的super key, 即在决定属性集(左边的)都包含候选码
2. A是R的主属性
证明:
如果X -> A是非平凡函数依赖,A不是主属性,Y是R的码。
所以Y -> X, 要使得A不传递函数依赖于Y,则X -> Y,即X是R的super key.
BCNF
如果一个关系R是BCNF,对于R的每个函数依赖X -> Y,若Y不属于X,则X必含有候选码。即X(左边的)一定是super key。即是3NF的第一条。