一、什么是范式(NF)
范式的定义:范式是符合某一种级别的关系模式的集合。关系数据库中的关系必须满足一定的要求,满足不同程度要求的为不同范式。通俗来说就是在构造数据库时必须遵循的一定规则,在关系数据库中,这种规则就是范式。而这种规则根据范围不同而产生了不同的范式。分别为:第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、BC范式(BCNF)、第四范式(4NF)。
补充一下关于关系与关系模式的区别,类似于面向对象程序设计中”类“与”对象“的区别。”关系“是”关系模式“的一个实例,你可以把”关系”理解为一张带数据的表,而“关系模式”是这张数据表的表结构。
二、第一范式
一个关系模式R的所有属性都是不可分割的基本数据项,则R∈1NF
第一范式是关系数据库的最基本要求,符合高一级范式的设计,则一定符合低一级范式。
(原子性:保证每一列不可再分)
三、第二范式
若关系模式R∈1NF,并且每一个非主属性都完全函数依赖于R的码,则R∈2NF。只有一个主键的表,如果符合第一范式,那一定是第二范式。