针对一个问题,我们该如何构造一个适合它的数据库模式?应该构造几个关系模式。每个关系模式应该有哪些属性呢?这些数据库设计的问题,确切地讲是关系数据库逻辑设计的问题。由于关系模型有严格的数学理论基础,并且可以向别的数据库进行模式模型转换,因此人们就以关系数据库为背景来讨论这个问题形成了数据。库逻辑设计的一个有力工具,关系数据库的规范化理论。

基本概念。

数据依赖是一个关系。内部属性与属性之间的约束关系。这种约束关系是通过属性间值的相等与否来体现数据间的关系联系。对于数据依赖,其最重要的就是函数依赖和多值依赖。

对于一个通常的普通的。关系。它会存在可能一些问题,数据冗余,更新异常,插入异常,删除异常。我们现在的问题是如何对原来的模式进行分解来解决这些问题呢?这就涉及到了数据库的规范化。

##规范化。
函数依赖。函数依赖其实就是可以从函数的概念去理解其对于一个关系。它的两个。属性。我有两个元组。他们X属性相等,但是y属性不等,那么这就不叫做函数依赖函数依赖是指在。两个元组。不可能存在说他X的属性相等时,y的属性不同,即X确定了,y也跟着确定了。

进而引出几个常见的概念频繁函数依赖是指X。函数X确定y,但是y是属于X的一个子集,那么就称作是平凡函数依赖。相反,非平凡函数依赖是指X函数确定y,但是y不属于X。X的函数确定y,那么也称是称。X称为这个函数依赖的决定性组也称为决定因素。如果X决定y。并且X的任何一个真子集,都不能决定y就是说明决定y的。呃,元素的最小的集合,那么就称作。Y对X完全函数依赖。相反,如果X函数决定y,但是y不完全函数依赖于X则称,y对X部分函数依赖。同样的,如果X函数决定y且y。不含于X。Y。度的函数不决定X。且y的函数决定Z。那么。Z对X传递函数依赖集做X传递Z。

马是一个重要的概念。包含任何一个候选码的属性称为主属性。不包含在内的称为非主属性。属性或集合。K完全。函数依赖于you那么key称为儿的候选吗?在极端的情况下,如果整个属性组都是马的话,那么称为全马。

范式。

范式是关系数据库中。满足不同程度要求,的一种规范一个第一集的范式的关系通过模式分解可以转换为高一级别的范式的过程称为规范化,就是范式由低到高逐渐变得规范的过程。

二范式。

二范式。要前提是,它是一范式,并且每一个非主属性完全依赖于任何一个候选码。二范式解决的是不存在非主属性对码的部分函数依赖。

三藩市。

Seven是解决的是不存在非主属性对码的传递函数依赖。

增强三范式。

增强三范式解决的是主属性对码的部分函数依赖和传递函数依赖。哎呀,救命。多值依赖,多值依赖,不用看了。四方式也不用看了吧?阿姆斯特朗。数据库依赖公理系统。极小函数依赖集,亦称为最小依赖集。模式的分解。

阿姆斯特朗公理系统。Armstrong。