数据库设计范式深入浅出(下)

发表于:2008-10-21来源:作者:点击数: 标签:数据库设计深入浅出范式
关键字: 数据库 设计 解决办法:分成管理EP(ENO,PNO,QNT),关键字是(ENO,PNO)工作EW(ENO,WNO)其关键字是ENO 缺点:分解后函数依赖的保持性较差。如此例中,由于分解,函数依赖(WNO,PNO)- ENO 丢失了, 因而对原来的语义有所破坏。没有体现出每个
关键字:数据库设计

  解决办法:分成管理EP(ENO,PNO,QNT),关键字是(ENO,PNO)工作EW(ENO,WNO)其关键字是ENO

  缺点:分解后函数依赖的保持性较差。如此例中,由于分解,函数依赖(WNO,PNO)-> ENO 丢失了, 因而对原来的语义有所破坏。没有体现出每个仓库里一种部件由专人负责。有可能出现一部件由两个人或两个以上的人来同时管理。因此,分解之后的关系模式降低了部分完整性约束。

  一个关系分解成多个关系,要使得分解有意义,起码的要求是分解后不丢失原来的信息。这些信息不仅包括数据本身,而且包括由函数依赖所表示的数据之间的相互制约。进行分解的目标是达到更高一级的规范化程度,但是分解的同时必须考虑两个问题:无损联接性和保持函数依赖。有时往往不可能做到既有无损联接性,又完全保持函数依赖。需要根据需要进行权衡。

  1NF直到BCNF的四种范式之间有如下关系:

  BCNF包含了3NF包含2NF包含1NF

  小结:

  目地:规范化目的是使结构更合理,消除存储异常,使数据冗余尽量小,便于插入、删除和更新

  原则:遵从概念单一化 "一事一地"原则,即一个关系模式描述一个实体或实体间的一种联系。规范的实质就是概念的单一化。

  方法:将关系模式投影分解成两个或两个以上的关系模式。

原文转自:http://www.ltesting.net