1.什么是三范式
三范式是相对关系型数据库来说的,三范式中的范式也就是规范的意思,三范式就是指利用关系型数据库进行建表时候普遍需要遵循的三个范式(1NF、2NF、3NF)
1.第一范式:
确保表的每一列字段保持原子性
2.第二范式:
满足第一范式,非主键字段必须完全依赖主键字段,而不是仅仅依赖主键的一部分。
3.第三范式:
满足第二范式并且每个字段都不间接依赖于主键列,或者说: 任何非主属性不依赖于其它非主属性
(在2NF基础上消除传递依赖)
2.三范式能干什么
我们在设计数据库时,要遵守良好的规范要求,设计出合理的关系型数据库(数据库优化),不同的规范要求被称为不同的范式,而且各种范式呈递进关系,越高的范式数据库冗余越少。
目前数据库有6种范式:第一范式、第二范式、第三范式、巴斯-科德范式(BCNF)、第四范式、第五范式(完美范式)
范式越高,冗余越少,但在实际设计数据库中,有时为了提高运行效率,数据冗余的情况也是有很多的。(比如数据库中存储了一名学生的几科成绩,我们常常要获取这名学生的总成绩所以每次要进行计算的时候,都会降低性能,我们可以直接在数据库中加上总分这个冗余的字段)
部分内容鉴戒前辈的博文 :链接: 数据库三范式的简单理解.