范式是数据库中的术语。范式是复合某一种级别的关系模式的集合。关系数据库中的关系必须满足一定的要求,满足不同程度要求的为不同的范式。
目前关系数据库有六种范式:
第一范式(1NF):如果关系模式R的所有属性的值域中每一个值都是不可再分解的值,则称R属于第一范式模式。如果某个数据库模式都是第一范式的,则称该数据库模式属于第一范式的数据库模式。第一范式的模式要求属性值不可再分裂成更小部分,即属性项不能是属性组合或由组属性组成。
第二范式(2NF):如果关系模式R为第一范式,并且R中每一个非主属性完全函数依赖于R的某个候选键,则称R为第二范式模式。如果某个数据库模式中每个关系模式都是第二范式的,则称该数据库模式属于第二范式的数据库模式。(如果A是关系模式R的候选键的一个属性,则称A是R的主属性,否则称A是R的非主属性。)
第三范式(3NF):如果关系模式R是第二范式,且每个非主属性都不传递依赖于R的候选键,则称R是第三范式的模式。如果某个数据模式中的每个关系模式都是第三范式的,则称该数据库模式属于第三范式的数据库模式。
Boyce-Codd范式(BCNF):如果关系模式R是第一范式,且每个属性都不传递依赖于R的候选键,那么称R为BCNF的模式。
第四范式(4NF):设R是一个关系模式,D是R上的多值依赖集合。如果D中成立非平凡多只依赖X->Y时,则X必是R的超模,那么称R是第四范式的模式。
第五范式(5NF):终极范式,消除了4NF中的连接依赖。