数据库范式
1. 第一范式(1 NF )
第一范式是最基本的范式,符合数据表的原子性。第一范式就是每一个属性都不可再分。
-
表中的同一列的类型相同
-
一个列名只能对应到一列
-
每一列都不可分
-
行的上下关系互不影响
2. 第一范式(2 NF)
第二范式,是在1 NF的基础上,消除了非主属性对于主属性的部分函数依赖,简单的说就是表中的非主属性必须完全依赖于主属性。
完全依赖: 不能存在仅仅依赖候选键一部分的属性。
- 判断一个关系是否属于第二范式:
- 找出数据表中的所有候选键
- 找出所有主属性和非主属性
- 判断所有的非主属性对候选键的部分函数依赖
3.第一范式(3 NF )
第3范式指的是表中的所有数据元素,不但要能唯一的被主关键字所标识,而且它们之间还必须相互独立,不存在其他的函数关系。
也就是说:在2 NF 的基础上,消除传递函数依赖。传递函数依赖,指的是如果存在A --> B -->C 的决定关系,则C 传递函数依赖于A。
4. BC范式(BC NF)
BC NF 是消除主属性对主键的部分和传递依赖。
5. 第四范式(4 NF)
第四范式是消除表中的多值依赖。
总结
- 1 NF 是为了保证原子性,每个列属性不可再分。
- 2 NF 是为了消除非主属性对主属性的部分函数依赖。
- 3 NF 是为了消除非主属性对主属性的传递函数依赖。
- BC NF 是为了消除主属性对主键的部分和传递依赖。
- 4 NF 是为了消除表中的多值依赖。
注意:
本文图片来源: https://www.bilibili.com/video/BV1AM4y1u7cB?from=search&seid=10981649986536367252
小姐姐不光讲的很清楚,说话又好听,点开看看吧,嘻嘻。