欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

数据库三大范式最简单的解释

程序员文章站 2024-02-01 15:26:40
...

关系数据库中的关系必须满足一定的要求,即满足不同的范式。目前关系数据库有六种范式:第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、第四范式(4NF)、第五范式(5NF)和第六范式(6NF)。满足最低要求的范式是第一范式(1NF)。在第一范式的基础上

关系数据库中的关系必须满足一定的要求,即满足不同的范式。目前关系数据库有六种范式:第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、第四范式(4NF)、第五范式(5NF)和第六范式(6NF)。满足最低要求的范式是第一范式(1NF)。在第一范式的基础上进一步满足更多要求的称为第二范式(2NF),其余范式以次类推。一般说来,数据库只需满足第三范式(3NF)就行了。

很多资料上的范式都讲的很难理解,这里总结一下三大范式,便于读者简易的理解。

1NF:字段是原子性的,不可分;
2NF:有主键,非主键字段依赖主键。确保一个表只说明一个事物
3NF:非主键字段不能相互依赖。 每列都与主键有直接关系,不存在传递的依赖

第一范式:不符合第一范式的例子:

表:字段1、 字段2(字段2.1、字段2.2)、字段3 ......

第二范式:不符合第二范式的例子:

表:学号、课程号、姓名、学分;

这个表明显说明了两个事务:学生信息, 课程信息;由于非主键字段必须依赖主键,这里学分依赖课程号,姓名依赖与学号,所以不符合二范式。

第三范式:不符合第三范式的例子:

表:学号、姓名、 年龄、 所在学院、学院联系电话、学院联系电话

存在依赖传递: (学号) → (所在学院) → (学院地点, 学院电话)