数据库第6章数据依赖和关系规范化理论幻灯片.ppt

数据库第6章数据依赖和关系规范化理论幻灯片.ppt

  1. 1、本文档共56页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
判断两个函数依赖集是否等价的方法也可以用来判断一个分解是否保持依赖。 下面以一个例子来说明一下。 例6-11:设R(A,B,C,D),F={A→B,C→D},ρ={R1({A,B},{A→B}),R2({C,D},{C→D})}。 因为 F={A→B,C→D},F1∪F2={A→B,C→D} 所以 F+ = (F1∪F2)+ 该例还说明,一个具有依赖保持性的分解不一定具有连接不失真性。 例6-12:设R(A,B,C),F={A→B,C→B},ρ={R1({A,B},{A→B}),R2({A,C},{A→C})}。 R1∩R2=A, R1-R2=B,R2-R1=C R1∩R2→R1-R2= A→B∈F 但F={A→B,C→B},F1∪F2={A→B,A→C},即F+ ≠ (F1∪F2)+ 可见具有连接不失真性,但不具有依赖保持性。 6.5.4 模式分解的级别—范式 所谓模式规范化,就是对关系模式应当满足的条件的某种处理,其目的是: (1)消除异常现象。 (2)方便用户使用,简化检索操作。 (3)加强数据独立性。 (4)使关系模式更灵活,更容易使用非过程化的高级查询语言。 (5)更容易进行各种查询统计工作。 范式的级别越高,条件越严格,因此有: 1)第一范式(1NF) 定义6-18(1NF):如果一个关系模式R的每个属性的域都只包含单纯值,而不是一些值的集合或元组,则称R是第一范式,记为R∈1NF, 把一个非规范化关系模式变为1NF有两种方法,一是把不含单纯值的属性分解为多个属性,并使它们仅含单纯值。 例如,设模式: P (PNO,PNAME,QOH,PJ(PJNO,PJNAME,PJMNO,PQC)) 将模式P变为: P(PNO,PNAME,QOH,PJNO,PJNAME,PJMNO,PQC) 第二种方法是把关系模式分解,并使每个关系都符合1NF。则: Pl (PNO,PNAME,QOH) PJl (PNO,PJNO,PJNAME,PJMNO,PQC) 关系PJl存在异常现象,例如,当一个新工程刚提出,仅有工程名,没有工程号,也没有使用零部件,此时工程数据就不能写入数据库。原因是存在部分函数依赖: 2)第二范式(2NF) 定义6-19(2NF):如果关系模式R∈1NF,且它的任一非主属性都完全函数依赖于任一候选关键字,则称R满足第二范式,记为R∈2NF。 把一个1NF的关系模式变为2NF的方法是,通过模式分解,使任一非主属性都完全函数依赖于它的任一候选关键字。 例如对上例,若把PJ1进一步分解成: PJ2 (PNO,PJNO,PQC) J(PJNO,PJNAME,PJMNO) 3)第三范式(3NF) 定义6-20(3NF):如果关系模式R∈2NF,且每一个非主属性不传递依赖于任一候选关键字,则称R∈3NF。 例如把关系模式S分解成: ST (SNO,NAME,DNAME) DEPT(DNAME,DADDR) 3NF定义告诉我们,一个关系模式满足3NF的充分必要条件是,它的每个非主属性既不部分依赖也不传递依赖于候选关键字。 4)Boyce-Codd范式(BCNF) 定义6-21(BCNF):设有关系模式R及其函数依赖集F,X和A是R的属性集合,且A?X。如果只要R满足X→A,X就必包含R的一个候选关键字,则称R满足BCNF,记为R∈BCNF。 该定义主要有三点: (1)所有非主属性A对键都是完全函数依赖的(R∈2NF)。 (2)没有属性完全函数依赖于非键的任何属性组(R∈3NF)。 (3)所有主属性对不包含它的键是完全函数依赖的(新增加条件)。 例如,模式S (NAME SEX BIRTH,ADDR,DNAME)的主属性为:NAME,SEX,BIRTH和ADDR,候选关键为:(NAME,SEX)、(NAME,BIRTH)以及(NAME,ADDR)。定义中的A为(ADDR,DNAME)。显然有: 事例 解:显然不存在部分函数依赖,故R∈2NF。 若设X=CITY ST,Y=ZIP,则找不出既不包含于X,又不包含于Y的非主属性A,传递依赖于候选关键字,所以R∈3NF。 但对于F中的ZIP→CITY而言,ZIP不是候选关键字,可见R?BCNF。 例6-13:设有关系模式R (CITY,ST,ZIP),F={(CITY,ST)→ZIP,ZIP→CITY},KEY={(CITY,ST),(ST,ZIP)},试判断R的最高范式。 范式之间的关系 1NF 3NF BCNF 2NF 消去非主属性对键的部分函数依赖 消去非主属性对键的传递函数依赖 消去主属性对键的传递函数依赖 6.5.5 模式分解算法 按照上面讨论的模式分解理论,一个模式分解必须满足: ①连接不失

您可能关注的文档

文档评论(0)

开心农场 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档