很多初学者碰到“三大范式”的相关考试题都一脸懵逼,然后问度娘,翻遍了各种网站也没有一个通俗易懂的答案,
我写这篇文章记录一下自己理解这个问题的过程,总结一下关于范式的问题,也希望可以帮助到大家
每年的软考试题一般都会有一两道关于数据库的题,而“范式”也算是其中的一个难点,很多人在这个地方花费了大量的时间
简单的写一下自己的理解,主要用来辅助理解官方的定义。
简单通俗易理解的定义如下:
范式:数据库设计的规范模式, 是一种规范。一般分为1、2、3和BNC范式,4、5、6几乎不用
目的 :为了解决数据库设计中的插入、修改、删除异常。一般使用第三范式或BNC范式。数据库仓库中为了提高效率,有时还需要降范式。
先简单说明一下
1.范式:(1NF)无重复的列,符合1NF的关系中的每个属性都不可再分。
2.范式:(2NF)属性完全依赖于主键
3.范式:(3NF)属性不依赖于其它非主属性