依据预设规则强弱程度,范式分为:
第一范式(1NF)
第二范式(2NF)
第三范式(3NF)
BC范式(BCNF)
第四范式(4NF)
第五范式(5NF)
1NF
若关系模式R的所有属性都是不可分的基本数据项,则R属于1NF(表不可分)
2NF
若R属于1NF,且不存在非主属性对码的部分函数依赖,则R属于2NF(码由几个属性组成,非主属性有对码中部分属性有函数依赖导致数据冗余)
3NF
若R属于2NF,且不存在非主属性对码的传递函数依赖,则R属于3NF
BCNF
BCNF比3NF更严格
若R属于1NF,且每一个非平凡函数依赖,X->Y(Y不是X的子集),若X必含有码,则称R属于BCNF(每一个函数依赖都包含码,并不一定要包含码的全部属性)
BCNF性质:
1、所有非主属性对每一个码都是完全函数依赖
2、所有主属性对每一个不包含它的码,也是完全函数依赖
3、不存在任何属性完全依赖于非码的一组属性
判断码
关系模式的码必须可以使关系模式中的依赖涉及到全部属性,如果有属性没有被任何属性所决定,那么该属性属于码