数据规范化!!!
|
以前看到有网友在提问问题给表例的时候,可以明显看出这个关系不符合最基本的INF,2NF,
3NF!下面我就简要介绍一下关系的规范化中的第一范式,第二范式和第三范式!这是关系规范化中最基本的! 第一范式:每个分量必须是不可再分的数据项!如你可以把姓和名分开!这个比较简单,就不多说了! 第二范式:若关系(也就是我们所说的表)R属于1NF,且第个非主属性完全函数依赖于码,则称R属于2NF 如学生(学号,系别,宿舍楼,选修课,分数)这个关系中在如下: (学号+选修课)决定你的分数 学号决定了该生所性的系别 学号决定了该生在何宿舍楼 (学号+选修课)决定了系别 学号+选修课)决定了宿舍楼 则在这个关系(表)中存在部分函数依赖,使之不属于2NF 此时我们可以采用分解的,就是说把上面的表分解成2个表 学生1(学号,选修课,分数) 学生2(学号,系别,宿舍楼) 此时这两个关系就属于2NF 第三范式:在关系模式R<U,F>中,若不在在这样的码x,属性组Y及非主属性Z,使得Y 完全函数依赖于X,Z完全函数依赖于Y成立,则R<U,F>属于3NF 如:学生2(学号,系别,宿舍楼)就存在X(学号),Y(系别),Z(宿舍楼) 使得学生2关系不属于3NF 同理我们分解它: 学生21(学号,系别) 学生22(学号,宿舍楼) 这样所建立的关系 学生1(学号,选修课,分数) 学生21(学号,系别) 学生22(学号,宿舍楼) 就是满足第3范式的关系! --董晓涛 |