各种范式呈递次规范,越高的范式数据库冗余越小。 目前关系数据库有六种范式:第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、巴斯-科德范式(BCNF)、第四范式(4NF)和第五范式(5NF,又称完美范式)。
第一范式:强调的是列的原子性,即列不能够再分成其他几列。如果数据库中的每一盒关系模式都是第一范式的,数据库模式就是R属于1NF
第二范式:设关系模式R(U, F),如果R属于1NF且所有的非主属性完全依赖于R的每个键,则R属于2NF。若数据库模式R中的每个关系模式R都属于2NF,则数据库模式R属于2NF
第三范式:设关系模式R(U, F),若R属于1NF且在R中没有非主属性传递依赖于R的键,则R属于3NF。如果数据库模式R中每一关系模式都是第三范式,则数据库模式R属于3NF
定理:若关系模式R(U,F)属于3NF,则R属于2NF
BCNF :设关系模式R(U,F),若R属于1NF且R中没有任何属性传递依赖于R的任一键,则R属于Boyce-Codd范式(BCNF)。如果数据库模式R中的每个关系模式R属于BCNF,则数据库模式R属于BCNF。