5关系数据库设计理论.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
5关系数据库设计理论.ppt

第五章 关系数据库设计理论 * 用函数依赖定义键 超键:能唯一标识元组的属性集称为关系模式的超键。 候选键:如果一个属性集能唯一标识元组,且不含有多 余的属性,那么这个属性集成为候选键。 定义:如果关系模式R的属性集为A1,A2,…An,F是R上成立 的一个FD集,X是A1,A2,…An的一个子集,如果X-A1,A2, …An在F+中,那么称X是R的一个超键。如果X-A1,A2,…An 在F+中,且对于X的任何一个真子集X1, X1-A1,A2,…An 在都不在F+中,则称X是R的一个候选键。 属性集的闭包 定义:设F是属性集U上的FD集,X是U的子集,那么属性集 X的闭包X+,它是一个从F集使用FD推导规则推出的所有满 足X-A的属性集A的集合: 定理:X-Y能用FD推理规则推出的充分必要条件是 证明:(充分性)根据 ,设Y=A1,A2,…,An。由属性集 闭包定义可知:X-Ai在F+中。再根据合并规则,X-A1, A2,…,An 即X-Y。 (必要性)由X-Y,根据分解规则,X-Ai,根据属性集闭 包定义可得 ,所以 ,即 *用属性集的闭包来定义候选键 定义:如果关系模式R的属性集为U,F是R上成立的一个 FD集,X是U的一个子集,如果X的属性集的闭包X+ =U,则 称X为R的一个超键,如果对于X的任何一个真子集Y, 有Y+≠U。则X为R的一个候选键。 算法:求属性集X关于FD集F的闭包X+ 输入:属性集U,U上的FD集F,X是U的子集 输出:X关于F的闭包X+ 方法: Result:=X; repeat for F 中的每个FD Y-Z do if then Result:=Result U Z; until (result 没有改变); Result 即为所求的X+ 例:属性集U为ABCD,FD集为 , 求A+,AD+ A+ (1) Result=A (2) Result=A U B =AB (3) Result=AB U C =ABC AD+ = ABCD 例题: 求BD+ 1) result=BD, AB不含于result,result=BD 2) result=BD,D包含于result,result =BD U EG=BDEG 3) result=BDEG,C不含于result,result=BDEG 4) result=BDEG,BE包含于result,result =BDEG U C=BCDEG 5) result=BCDEG,BC包含于result,result=BCDEG U D=BCDEG 6) result=BCDEG,CG包含于result,result=BCDEG U BD=BCDEG 7) result=BCDEG,ACD不含于result,result=BCDEG 8) result=BCDEG,CE 含于result,result=BCDEGUAG=ABCDEG * 快速求解候选键的充分条件 对于给定的关系模式R=(A1,A2,…,An)和函数依赖集F, 可将其属性分为四类: 1、仅仅出现在F的函数依赖左部的属性L类; 2、仅仅出现在F的函数依赖右部的属性R类; 3、在F的函数依赖的左右两边都没有出现的属性N类; 4、在F的函数依赖的左右两边都出现的属性LR类; 定理:对于给定关系模式R及其函数依赖集F(不包含平凡FD) 1) X是L类属性,则X必为R的任何一个候选键的成员。 2) X是R类属性,则X不包含在任何候选键中。 3) X是R的N类属性,则X也必为R的任何一个候选键的成员。 4) X是R的LR类属性,则X可能是也可能不是候选键的成员。 1) 反证法:设W为R的任一候选键,X不是W的成员。由于 X仅仅出现在F的函数依赖左部,所以R中没有其它属性能 够函数决定X,这样W+中就不可能包含X,这样就与W是R的 候选键相矛盾。所以X必然是候选键W的成员。 (X为L类的情况) 2) 反证法:设W是R的任一候选键,X不是W的成员。由于X 没有出现在F中,那么R中没有其它属性能够函数决定X。 这样W+中就不可能包含X,这与W是R的候选键相矛盾。所以 X必然是候选键W的成员。 (X是N类的情况) 例:设有关系模式R(A,B,C,D),其函数依赖集F如下, 求R的候选键。 传统步骤:1、分别求A/B/C/D/AB/AC/AD/BC/BD/CD ABC/ABD/ACD/BCD/ABCD的属性集的

文档评论(0)

xingkongwd + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档