三级范式
- 1NF 的定义为:符合1NF的关系中的每个属性都不可再分
理解:一范式就是属性不可分割
2NF 在 1NF的基础之上,消除了非主属性对于码的部分函数依赖
函数依赖: 若在一张表中,在属性(或属性组)X的值确定的情况下,必定能确定属性Y的值,那么就可以说Y函数依赖于X
- 完全依赖
- 部分依赖
- 传递依赖
码(键)设 K 为某表中的一个属性或属性组,若除 K 之外的所有属性都完全函数依赖于 K,那么我们称 K 为候选码,简称为码
非主属性
部分函数依赖
理解:二范式就是要有主键,要求其他字段都依赖于主键
- 第三范式(3NF)3NF在2NF的基础之上,消除了非主属性对于码的传递函数依赖
三范式就是要消除传递依赖,方便理解,可以看做是“消除冗余”
数据库的设计的改进
改进的角度从数据冗余过大,插入异常,修改异常,删除异常入手