1.数据库三大范式
第一范式(1NF):列的原子性
- 数据库表中的每个字段都是原子性的,即不可再分的。
![]()
应拆分为
![]()
第二范式(2NF):消除部分依赖
- 满足一范式的前提下,表中不存在部分依赖。
- 在联合主键的情况下,非主键列不能只依赖主键的一部分。
![]()
联合主键:学生ID和课程ID,且满足1NF
依赖情况:学生ID和课程ID决定得分;而课程名称只依赖于课程ID,与学生ID没有依赖关系,即只依赖于主键的一部分,不满足2NF。
修改表后满足2NF
![]()
![]()
第三范式(3NF):消除传递依赖
- 满足二范式的前提下,表中不存在传递依赖。
- 非主键字段只依赖于主键,而不依赖于其他非主键字段。
![]()
主键:员工ID
依赖情况:员工姓名依赖员工ID;所属部门依赖员工ID;部门负责人依赖员工ID和所属部门,存在员工ID->所属部门->部门负责人(非主键字段的传递依赖情况),不满足3NF。
修改表后满足3NF
![]()
![]()
文章参考:https://baijiahao.baidu.com/s?id=1780708461518887980&wfr=spider&for=pc
本文来自博客园,作者:jsqup,转载请注明原文链接:https://www.cnblogs.com/jsqup/p/17829031.html









浙公网安备 33010602011771号