- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
关系模式设计方案问题
4.3 数据依赖的公理系统 必要性: ( X?Y - Y?XF+ ) 设X?Y能由阿氏公理导出。Y=A1A2…An 由分解规则得: X?A1, X?A2…, X?An 由X+ 的定义可知,Ai?X+ (i=1,2,…,n) 即Y?XF+ 。 4.3 数据依赖的公理系统 2. 属性闭包的计算 算法4.1 : 求属性集X关于F的闭包XF+(X+)。 简化算法: 设 RU,F,A为U中属性(集)。 (1) X(0)=X (2) X(i+1)=X(i)∪A 其中:对F中任一个Y-A ,且Y?X(i); 求得X(i+1) 后,对Y-A 做删除标记。 (3)若X(i+1)=X(i) 或 X(i+1) =U则结束,否则转(2)。 例:设有关系模式RU,F,其中U={A,B,C,D,E,I}, F={A→D,AB→E,BI→E,CD→I,E→C} 计算(AE)+。 4.3 数据依赖的公理系统 3.函数依赖集的等价和覆盖 定义: 如果F+=G+ ,就说函数依赖集F覆盖G或F与G等价 定理: F+=G+ 的充分必要条件是F?G+,和G?F+。 (1)必要性 ∵F和G等价,∴F+=G+,又∵F?F+,∴F?G+ 同理,∵G?G+,∴G?F+。 (2)充分性 任取X→Y∈F+,则有Y?XF+ (定理4.6) 又∵F?G+(已知),∴Y?XG++ ∴X→Y∈(G+)+=G+,∴F+?G+。 同理可证G+?F+,∴F+=G+,即F和G等价。定理证毕。 4.3 数据依赖的公理系统 如何判断函数依赖集F和G是否等价呢? 只要验证F中的每一个函数依赖X→Y都在G+中,同时验证 G中的每一个函数依赖V→W都在F+中。这不需要计算F+和 G+,只要计算XG+验证Y?XG+,再计算VF+,验证W?VF+即可。 例:F={A→B, B→C}, G={A→BC, B→C},判断F和G是否等价 解:(1)先检查F中的每一个函数依赖是否属于G+。 ∵AG+=ABC,∴B?AG+,∴A→B∈G+ 又∵BG+=BC,∴C?BG+,∴B→C∈G+ ∴F?G+ (2)然后检查G中的每一个函数依赖是否属于F+。 ∵AF+=ABC,∴BC?AF+,∴A→BC∈F+ 又∵BF+=BC,∴C?BF+,∴B→C∈F+ ∴G?F+ 由(1)和(2)可得F和G等价。 4.3 数据依赖的公理系统 4.最小函数依赖集 定义:若F满足下列条件,则称其为最小函数依赖集Fm。 (1) F中每个函数依赖的右部都是单属性; (2) 对F中的任一函数依赖X→A,F-{X→A}与F都不等价 (3) 对于F中的任一函数依赖X→A和X的真子集Z, (F-(X→A))U{Z→A}与F都不等价。 (1)保证在函数依赖的右部没有多余的属性; (2)保证F中不存在多余的函数依赖; (3)保证F中每个函数依赖的左部没有多余的属性。 4.3 数据依赖的公理系统 定理: 每个F与Fm等价。 如何求最小函数依赖集Fm? (1)分解:使F中任一函数依赖的右部仅含有单属性。 (2)去掉函数依赖左边多余的属性: 方法:对F中任一XY?A,在F中求X+, 若A?X+ ,则Y为多余的。 (3)去掉多余函数依赖: 方法:对F中任一X?A,在F-{X?A}中求X+, 若A?X+,则X?A为多余的。 4.3 数据依赖的公理系统 例: 设函数依赖集F={A→C,C→A,B→AC,D→AC,BD→A} 求与F等价的最小函数依赖集。 例:设有函数依赖集F={B→C,C→AB,A→BC,BC→A} 求与F等价的最小函数依赖集。 注意:一个函数依赖集的最小集不是惟一的。 例如,F={A→B,B→A,B→C,A→C,C→A} Fm1={A→B,B→C,C→A}, Fm2={A→B,B→A,A→C,C→A}。 4.4 关系模式的分解 对于存在数据冗余、插入异常、删除异常的关系模式,可以通过对关系模式的分解来解决问题。关系模式分解后会带来两个问题: (1)查询时的连接操作是否会丢失某些信息或多出某些信息。这引出了无损连接的概念。 (2)分解后的关系模式是否保持了原来的函数依赖。这是保持函数
文档评论(0)