数据库中的三范式
第一范式
概念:
关系中每一个属性都是单值的,各个属性不具有有可分割性
第一范式可以说是非常好理解的,在此不做过多的介绍。
第二范式
概念:
满足第一范式,并且所有的非主属性(不在任何候选关键字中的属性称非主属性)都完全依赖于任意一组候选关键字的
简单举例:
-
错误的表设计
选课(学号,姓名,性别,课程名称,学分,成绩)
-
修改后
学生(学号,姓名,性别)
课程(课程名称,学分)
选课(学号,课程名称,成绩)
第三范式
概念:
满足第二范式,并且关系中不存在非主属性对任一候选关键字的传递函数依赖,则该关系符合第三范式的
简单举例:
-
错误的表设计
学生及班级(学号,姓名,性别,班级编号,班级名称)
-
修改后
学生(学号,姓名,性别,班级编号)
班级(班级编号,班级名称)
希望通过以上示例能够帮助初学者简单认识常用的3NF,部分内容可能不符合实际中的规范,只是为了能够让其通俗易懂,帮助到更多的人。如有什么不足敬请各位指正!!!