我们都知道数据库设计中有一个比较重要的就是范式。可以说范式这让很多人头痛,不知所云。那么范式到底是什么呢?下面一起来学习下。
范式与规范化
首先我们肯定要对范式有一个比较笼统的了解:范式
是什么。
范式
是为了在设计数据库的时候,让数据表结构更加合理的一种规范
。也就是说,我们依据范式设计的数据表会让我们后面对数据表的操作更加简单与合理。
我们所说的范式也是分等级的,按照需要满足的要求从低到高依次是:第一范式
、第二范式
、第三范式
、BC范式
、第四范式
、第五范式(又称完美范式)
。
但是一般来说,只需要满足第三范式就足够了,所以下面我只对前三个范式和BC范式做说明。
既然范式是分等级
的,而在后面的学习中我们会知道,每一个高一级的范式,都是在低一级范式的基础上完善
而来的,那么就有人给我们这个完善
的过程起了个名字,就叫规范化
。
通过规范化,我们将使我们的表结构逐步满足第三范式甚至是更高级别的范式。
范式的分级
第一范式
第一范式:
最低要求的范式。它是针对数据表中具体的某一列
来说的,强调了一列的原子性
。也就是说,这一列所代表的属性是不可分的。
比如下面的例子:
上面的数据表就是一个不符合第一范式的例子,这里讲电话认为是包含了手机和座机两种类型,所以,电话
这个属性就是可分的,也就不属于第一范式。
将上面的数据表进行规范化后,形成符合第一范式的表结构应该是这样的: