关系模型规范化的有关理论与应用

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

 第37卷第4期 2003年4月

上海交通大学学报

JOU RNAL O F SHAN GHA I J I AO TON G UN I V ER S IT Y

V o l .37N o.4 

A p r .2003 

收稿日期:2002205216

作者简介:孙昌言(19492),男,安徽芜湖市人,副教授,硕士,研

究方向为管理信息系统、经济定量分析.

文章编号:100622467(2003)0420523204

关系模型规范化的有关理论与应用

孙昌言

(同济大学经济与管理学院,上海200092)

摘 要:在函数依赖的范畴内对关系模型的规范化理论及其运用问题进行了研究,证明了关于Boyce 2Codd (BC )范式两个定义的等价性,提出了关于BC 范式的一个实用的判定定理并加以证明.提出了一整套实用关系规范化的具体方法,有助于关系规范化理论的进一步完善及其学习和运用.

关键词:关系规范化理论;函数依赖;Boyce 2Codd 范式;判定定理;规范化中图分类号:T P 311.131 文献标识码:A

The o ry a nd App lica tion a bout No r m a liza tion of Re la tion M ode l

SUN Chang 2y an

(Schoo l of Econom ics and M anagem en t ,Tongji U n iv .,Shanghai 200092,Ch ina )

A bs tra c t :W ith in the catego ry of functi on dep endency ,the theo ry and app licati on of no r m alizati on of rela 2

ti on m odel w ere studied .A t first ,the equ ivalency of the tw o defin iti on s abou t Boyce 2Codd no r m al fo r m w as p roved .T hen ,a u sefu l judgem en t theo rem abou t Boyce 2Codd no r m al fo r m w as advanced and p roved .A t last ,a set of p ractically sp ecific m ethods of relati on no r m alizati on w ere system atically pu t fo r w ard .T hese studies can give som e help to the fu rther p erfecti on of the relati on no r m alizati on theo ry and its app li 2cati on s .

Ke y w o rds :relati on no r m alizati on theo ry ;functi on dep endency ;Boyce 2Codd no r m al fo r m (BCN F );

judgem en t theo rem ;no r m alizati on

关系模型是目前应用得最为广泛的数据库模型,其规范化理论是关系型数据库逻辑设计的基础.信息系统开发人员对关系规范化的运用能力将直接影响所设计数据库系统的质量,进而影响整个系统的性能.范式的概念最早是由Codd 提出的,他于1971~1972年发表的一系列论文中系统地提出了1范式(1N F )、2N F 、3N F 的标准,并深入探讨了关系

进一步规范化的问题,由此奠定了关系规范化理论

的基础.1974年,Codd 等提出了BCN F ;1976年,

Fagin 又提出了4N F [1]

.虽然关系规范化的理论研

究发展至今已经相当完备,但仍有进一步完善和充

实的必要.在函数依赖的范畴内,BC 范式已达到完

美的程度(已完全消除了有害的函数依赖关系),本文将在函数依赖的范畴内对关系规范化的理论和运用展开进一步研究.

1 BC 范式的两个定义及等价性证明

定义1 对1N F 的关系模式(以下简称关系)R 中的任意两个属性集X 、Y ,若有X →Y ,且Y ⁄X ,则X 必含有R 的关键字(也称键或码).称具有以上性质的关系是BC 范式[2].

这是使用得最为普遍的关于BCN F 的定义,它说明在BCN F 中只有关键字才能是函数决定因素.其实,BCN F 还可以有另一个等价定义,该定义直观地指出了BCN F 与3N F 的联系与区别.

定义2 设R是1N F的,若R中的每个属性都不传递函数依赖于R的任一关键字,则R是BC范式的.

定义2表明,BCN F排除了所有属性(包括主属性)对关键字的传递函数依赖,而非BCN F的3N F 关系仅排除了非主属性对关键字的传递函数依赖,仍然存在主属性对关键字的部分或传递函数依赖,因而仍然存在数据冗余度大、插入与删除异常、修改困难等问题.可见,BCN F比3N F对有害的函数依赖分离得更为彻底.下面采用反证法证明这两个定义的等价性.

(1)设R满足定义1的条件,倘若R不满足定义2的条件,则存在R的关键字X、属性A和属性集Y,使X→Y,Y

→X,Y→A,A∈ Y,即A传递函数依赖于X.因为Y

→X,故Y不含有R的关键字.与定义1条件矛盾.

(2)设R满足定义2的条件,倘若R不满足定义1的条件,则存在R中的属性A和属性集Y,有Y→A,A∈ Y,且Y不含有R的关键字.设X为R的任一关键字,则X→Y,Y

→X(Y不含有关键字), Y→A,A∈ Y,则A传递函数依赖于关键字X,与定义2条件矛盾.等价性证毕.

2 关于BC范式的一个判定定理定理 设关系R是3N F的,且R的关键字中至多只有一个是合成关键字,则R必为BCN F的.

证明 本定理中R的关键字中至多只有一个是合成关键字的条件,可以分解为以下3种情况并分别加以证明.

(1)设R是3N F的,且R的所有关键字都不是合成关键字.记B1,R2,…,B k(k≥1)为R的所有关键字(主属性).倘若R不是BCN F,则由定义1,存在R中的属性A和属性集Y,有Y→A,A∈ Y,且B i∈ Y,从而Y

→B i,故A必为非主属性,从而有非主属性A传递函数依赖于关键字B1,与R为3N F矛盾,故R必为BCN F的.

(2)设R是3N F的,且R仅有一个关键字X.倘若R不是BCN F,由定义1,存在R中的属性A 和属性集Y,有Y→A,A∈ Y,且X⁄Y.①若A是非主属性,则A传递函数依赖于X,从而R不是3N F 的,与条件矛盾.②若A是主属性,则A∈X,又由A∈ Y,且Y→A,令X1=(X-A)∪Y,则X1→X-A,且X1→Y,从而X1→A,由函数依赖的“并规则”[3]可得:X1→(X-A)∪A=X,故X1必含有R 的某个关键字X2.由X1的构造知,A∈ X2,但A∈X,从而X2≠X,R有两个不同的关键字X与X2,与条件矛盾,故R必是BCN F的.

(3)设R是3N F的,且有多个关键字,但其中仅有一个是合成关键字.设X是R的合成关键字.倘若R不是BCN F,则存在R中的属性A和属性集Y,有Y→A,A∈ Y,且Y不含有关键字,故Y→ X.①若A是非主属性,则A传递函数依赖于关键字X, R不是3N F的,与条件矛盾.②若A是主属性,则A 不可能是关键字(Y→A,Y不含有关键字),故A∈X.又由A∈ Y,且Y→A,令X1=(X-A)∪Y,则X1→X-A,且X1→Y,从而X1→A,同样可得:X1→(X-A)∪A=X,故X1必含有R的某个关键字X2.由X1的构造知,A∈ X2,但A∈X,故X2≠X.又因X与Y中都不可能含有R的非合成关键字,再由X1的构造,可知X2不可能是非合成关键字,从而X2必是合成关键字,即R有两个不同的合成关键字X与X2,与条件矛盾.故R必是BCN F的,定理证毕.

本判定定理具有以下应用价值:①由本定理可知,一个非BCN F的3N F关系中必含有多个合成关键字,了解这一点对指导关系型数据库系统的逻辑设计是非常有益的,即应避免在一个关系中包含多个合成关键字的情况;②可以在大多数情况下很直观地判定一个3N F的关系已是BCN F的;③根据本定理的结论,可得到将非BCN F的3N F关系规范化为BCN F的方法和步骤.

上述判定定理给出的是BCN F的一个充分条件,尚待同行专家们进一步研究的是:它是否还可能是必要条件?或者仅仅只是一个充分条件?若要证明它不是必要条件,就需要找到一个有多个合成关键字的BCN F的反例.由于关系中各属性间的函数依赖联系本质上属于语义定义问题,因此,要证明它是否是必要条件可能是及其困难的.但无论结果如何,都不会影响本判定定理的上述应用价值.

3 关系规范化的方法和步骤

关系的规范化,就是将一个低一级范式的关系,通过投影分解转换成若干高一级范式关系的过程,投影分解中,必须确保所得到的多个高一级关系之间有外部关键字作为相互联系的桥梁.下面是笔者根据范式的理论,提出的一整套将1N F的关系逐步规范化为BCN F的原理、方法和具体步骤.

3.1 将非2NF的关系分解为2NF

如果关系R中存在非主属性对关键字(合成关键字)的部分函数依赖,则R就不是2N F的.由此可

425 上 海 交 通 大 学 学 报第37卷 

相关文档
最新文档