数据仓库系列4-范式2

前面讲了下3范式。

http://www.cnblogs.com/wujin/p/6098676.html

在这里简单的介绍下BCNF,四范式,五范式

BCNF 也叫作3.5范式。

主要是任何属性都不能依赖于非主属性。

第三范式的基础上,第三范式是非主属性只能依赖于主属性,所以也就是主属性不能依赖于非主属性。

满足

1、联合主键

2、有候选键

例子:

班级 课程  教师

班级和课程是主键,

比如一个老师教一门课程,那么课程就依赖于老师,这种情况就是不符合BCNF

如果替换成 班级 教师 课程  那么又不符合第二范式。

所以这种情况下只能拆分成两张表

班级 教师

教师 课程

四范式

四范式主要是取消多值依赖。

1、三个属性作为联合主键,比如abc

2、ab,bc都存在关系,并且b的改动不会影响从c,c的改动也不会影响b,成为多值依赖

比如

学号 课程 语言

三个为联合主键

这种情况就是多值依赖

课程和语言没有任何关系。

需要进行拆分

学号  课程

学号  语言

五范式

消除连接依赖

ab,ac,bc都存在逻辑关系。

比如

学号 课程  教师 

可以拆分为

学号  课程

学号 教师

课程 教师

例子有点不太符合,但是意思大概差不多。

其实3范式以后的范式,在工作中基本很少接触,这也就是简单的了解下。

原文地址:https://www.cnblogs.com/wujin/p/6123291.html