第5章节 关系数据库规范化理论.ppt

  1. 1、本文档共40页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第5章节 关系数据库规范化理论

第1篇 数据库系统基础 第5章 关系数据库规范化理论 教学目标 本章将在函数依赖、多值依赖的范畴内讨论关系模式的规范化,介绍各级范式的定义和关系数据库的规范化理论。通过本章学习,读者需要了解关系模式的设计问题,掌握函数依赖和多值依赖的定义和含义,能够应用关系模式的范式及关系模式的分解特性解决实际的关系数据库设计问题。 提纲 规范化问题 数据依赖 关系模式的范式 函数依赖公理与模式分解 提纲 规范化问题 数据依赖 关系模式的范式 函数依赖公理与模式分解 提纲 规范化问题 数据依赖 关系模式的范式 函数依赖公理与模式分解 提纲 规范化问题 数据依赖 关系模式的范式 函数依赖公理与模式分解 F逻辑蕴含X→Y 定义5.15 对于满足一组函数依赖F的关系模式RU,F,其任何一个关系r,若函数依赖X→Y都成立(即r中任意两元组t和s,若t[X]=s[X],则t[Y]=s[Y]),则称F逻辑蕴涵X→Y。 Armstrong公理系统 设U为属性集总体,F是U上的一组函数依赖,于是有关系模式RU,F。对RU,F来说有以下推理规则: A1自反律:若Y?X?U,则X→Y为F所蕴含 A2增广律:若X→Y为F所蕴含,则Z?U,则XZ?YZ为F所蕴含。 A3传递律:若X→Y及Y→Z为F所蕴含,则X→Z为F所蕴含。 示例 【例5-4】 证明:对R(A,B,C,G,H,I),F={A→B,A→C,CG→H,CG→I,B→H},存在A→H,CG→HI,AG→I。 证明: (1) 由于A→B,B→H,依传递律,可得A→H。 (2) 由于CG→H,CG→I,依合成规则,可得 CG→HI。 (3) 由于A→C,CG→I,依伪传递律,可得AG→I。也可另证为:由A→C,依增广律,得AG→CG,又CG→I,依传递律,得AG→I。 闭包 定义5.16 设F是函数依赖集合,被F逻辑蕴含的函数依赖的全体构成的集合,称为函数依赖集F的闭包(Closure),记为F+,即 F+={X→Y|X→Y由F根据Armstrong公理系统导出} 定理5.1 Armstrong公理是正确的、有效的、完备的。 示例 【例5-5】设有关系模式R(U,F),其中U=ABC,F={A→B,B→C},则上述关于函数依赖集闭包计算公式,可以得到F+由43个函数依赖组成。例如,由自反性公理A1可以知道,A→Ф,B→Ф,C→Ф,A→A,B→B,C→C;由增广性公理A2可以推出AC→B C,AB→B ,A→AB等;由传递性公理A3可以推出A→C,…。 属性集闭包 定义5.17 关系模式R(U,F)中,F为属性集U上的一组函数依赖,X U,由Armstrong公理从F推出的函数依赖X→Ai中Ai的属性集合,为X的属性闭包,记作XF+={Ai|X→Ai}能由Armstrong公理从F推出,读作X关于函数依赖集F的闭包。 引理5.2 关系模式R(U,F)中,F为属性集U上的一组函数依赖,X,YU, X→Y能由Armstrong公理从F推出的充要条件是Y包含于XF+。 求属性集X的闭包 算法5.1 求属性集X的闭包XF+。 输入:X,F 输出:XF+ X(0) = X; i = 0; DO { i = i +1; IF F中存在函数依赖V→W,满足 V∈X(i-1) THEN X(i)= X(i-1)∪W; } WHILE (X(i-1) X(i)); XF+ = X(i); 示例 【例5-6】 R(U,F),其中U={A,B,C,D,E,I},F={A→D,AB→C,BI→C,ED→I,C→E},求(AC)+。 解: (1) 令X={AC},则X(0)=AC。 (2) 在F中找出左边是AC子集的函数依赖:A→D,C→E。 (3) X(1)=X(0)∪D∪E=ACDE。 (4) 很明显X(1)≠X(0)。 (5) 在F中找左边是ACDE子集的函数依赖:ED→I。 (6) ?X(2)=X(1)∪I =ACDEI。 (7) 虽然X(2)≠X(1),但是F中未用过的函数依赖的左边属性已没有X(2)的子集,所以停止计算,输出(AC)+=X(2)=ACDEI。 函数依赖集的覆盖与等价 设F和G是关系模式R上的两个函数依赖集,如果所有为F所蕴含的函数依赖都为G所蕴含,即F+是G+的子集:F+?G+,则称G是F的覆盖。 当G是F的覆盖时,只要实现了G中的函数依赖,就自动实现了F中的函数依赖。 如果G是F的函数覆盖,同时F又是G的函数覆盖,即F+=G+,则称F和G是相互等价的函数依赖集。 当F和G等价时,只要实现了其中一个的函数依赖,就自动实现了另一个的函数依赖。 最小函数依赖集的算法 (1) 由分解性规则得到一个与F等价的函数依赖集G,G中任意函数依赖的依赖因素都是单属

文档评论(0)

ctuorn0371 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档