数据库各大范式

数据库各大范式

第一范式(1NF)

第一范式要求数据库表的每一列都是不可分割的基本数据项,同一列中不能有多个值。即:所有的域都应该是原子性的。
在任何一个关系数据库中,第一范式(1NF)是对关系模式的基本要求,不满足第一范式(1NF)的数据库就不是关系数据库。
例子:学生成绩表(学号,姓名,系名,系主任,课程,成绩)

第二范式(2NF)

要满足第二范式就必须先满足第一范式。
第二范式要求数据库表的非主属性(不包含在任何一个候选码中的属性称为非主属性)必须完全依赖于主键。
例子:学生表(学号,姓名,系名,系主任);
成绩表(学号,课程,成绩)

第三范式(3NF)

要满足第三范式就必须先满足第二范式
第三范式要求消除数据库表中的传递依赖。即:实体中的属性不能是其他实体中的非主属性,会出现冗余。
例子:学生表(学号,姓名,系名);
系表(系名,系主任);
成绩表(学号,课程,成绩);

BCNF

在满足第二第三范式的情况下,主属性内部也不能部分或传递依赖。判断方法:箭头左边的必须是候选码,不是候选码的就不是BC范式。

第四范式(4NF)

没有多值依赖

相关内容推荐