数据库设计的三大范式 数据库设计的几大范式

过去我设计的数据库产品虽然可以使用,但是都是很不科学的数据库,大量存在数据冗余,或者管理不方便。在大学的课程中我终于明白一个比较科学的数据库设计需要满足些什么标准,这就是每个数据库的设计都必须满足三大范式的要求。

1.三大范式的内容

第一范式:当关系模式R的所有属性都不能在分解为更基本的数据单位时,称R是满足第一范式的,简记为1NF。满足第一范式是关系模式规范化的最低要求,否则,将有很多基本操作在这样的关系模式中实现不了。

第二范式:如果关系模式R满足第一范式,并且R得所有非主属性都完全依赖于R的每一个候选关键属性,称R满足第二范式,简记为2NF.

第三范式:设R是一个满足第一范式条件的关系模式,X是R的任意属性集,如果X非传递依赖于R的任意一个候选关键字,称R满足第三范式,简记为3NF.

2.关系的分解

符合3NF规范标准的关系模式就会有比较好的性质,不会出现数据冗余,数据不一致或插入,删除异常等情况。3NF分解的步骤大致如下:

(1)如果R不满足1NF条件,先对其分解,使其满足1NF。对R进行第一范式分解的方法是直接将其复合属性进行分解,用分解后的基本属性集取代原来的属性,以获得1NF。

(2)R符合1NF条件但符合第二范式条件时,分解R使其满足2NF。

假设R=(S1,S2,X1,X2)

PrimaryKey(S1,S2)(S1,S2)作为关键字

S1->X1

以上是一个典型的不满足第二范式的例子,可以分解为R1,R2

R1=(S1,S2,X1)

Primarykey(S1,S2)R1以(S1,S2)作为关键字

R2=(S1,X1)

数据库设计的三大范式 数据库设计的几大范式

Primarykey(S1)R2以(S1)作为关键字

如果R1,R2还不满足2NF条件,可以继续上述分解过程,直到每个分解后的关系模式都满足要求为止。

(3)对于R满足2NF不满足3NF条件,说明R中的所有非主属性对R中的任何候选关键字都是完全函数依赖的,但至少存在一个属性是传递函数依赖的。因此,存在R中的非主属性间的依赖作为传递依赖的过渡属性。

假设R=(S1,X1,X2)

PrimaryKey(S1)S1作为关键字

X1->X2X2通过非主属性X1传递依赖于S

以上就是典型的不满足第二范式的例子,可以分解为R1,R2

R1=(S1,X1)

PrimaryKey(S1)R1以S1为关键字

ForeignKey(X1)R1以X1为外键

R2=(X1,X2)

PrimaryKey(X1)R2以X1为关键字

如果R1,R2还不满足3NF,可以重复上述过程,直到符合3NF条件为止。

  

爱华网本文地址 » http://www.aihuau.com/a/25101010/25604.html

更多阅读

数据库设计的三大范式 数据库设计的几大范式

过去我设计的数据库产品虽然可以使用,但是都是很不科学的数据库,大量存在数据冗余,或者管理不方便。在大学的课程中我终于明白一个比较科学的数据库设计需要满足些什么标准,这就是每个数据库的设计都必须满足三大范式的要求。1.三大范

新手开车的几大注意事项 新手开车注意事项视频

学开车可不是件轻松的事情哦,虽然说考驾照的时候比较容易过关。可是作为驾驶员,可是背负着大家的生命,所以每一次上路都是一次学习。学开车技巧之新手开车的几大注意事项。每一位驾驶员都经历过初次上路的忐忑不安,眼盯前方,双手紧握转向

车祸猛于虎的几大因素 车祸猛于虎

车祸猛于虎的几大因素(2010-08-15 21:45:18)标签:车祸汽车疲劳驾驶酒后驾驶高速交通事故公路交通管理司机艺人杂谈世界上每年死于交通事故的总人数平均100余万人,受伤者约3000

盘点影视剧中最有魅力的几大美女土匪明星图 盘点影视剧观音

在众多的影视作品中,女性大多数是以温婉贤惠的形象示人,正因为如此英姿飒爽、巾帼不让须眉的“女土匪”形象往往更让人印象深刻,过目难忘,下面就让我们盘点一下影视剧中最有魅力的几大美女土匪,领略一下她们不同于一般女性角色的别样风采

声明:《数据库设计的三大范式 数据库设计的几大范式》为网友牛逼青年分享!如侵犯到您的合法权益请联系我们删除