无损连接分解.ppt

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

提纲 关系模式的设计问题 函数依赖 范式 函数依赖的推理规则 模式分解 关系模式的设计问题 示例 考虑为管理职工的工资信息而设计一个关系模式 关系模式的设计问题 问题:麻烦! 麻烦!! 好麻烦!!! 唉,剪不断,理还乱 信息的不可表示问题 插入异常:如果没有职工具有8级工资,则8级工资的工资数额就难以插入 删除异常:如果仅有职工赵明具有4级工资,如果将赵明删除,则有关4级工资的工资数额信息也随之删除了 信息的冗余问题 数据冗余:职工很多,工资级别有限,每一级别的工资数额反复存储多次 更新异常:如果将5级工资的工资数额调为620,则需要找到每个具有5级工资的职工,逐一修改 关系模式的设计问题 解决之道:分解! 分解!! 再分解!!! 哇,原来生活可以如此简单 关系模式的设计问题 有关学生的关系模式S(S# , SN , SD , DEAN , C# , G) 函数依赖 函数依赖 设R(U)是属性集U上的关系模式,X , Y ? U, r是R(U) 上的任意一个关系,如果成立 对?t , s ? r,若t[X] = s[X],则t[Y] = s[Y] 那么称“X函数决定Y”,或“Y函数依赖于X”,记作X?Y 称X为决定因素 如S# ? SN, (S#,C#)? G 函数依赖 检验:A→C?C→A?AB→D? 辨识: 满足依赖的关系:依赖在模式的某个关系实例上成立 模式上成立的依赖:依赖在模式的所有关系实例上都成立 练习 函数依赖 平凡函数依赖 如果X ? Y,但Y ? X,则称其为非平凡的函数依赖,否则称为平凡的函数依赖 如(S#,SN)? SN是平凡的函数依赖 函数依赖 部分函数依赖 在R(U)中,如果X?Y,且对于任意X的真子集X′,都有 ,则称Y对X完全函数依赖,记作 否则称为Y对X部分函数依赖,记作 函数依赖 传递函数依赖 在R(U)中,如果 则称Z对X传递函数依赖 S# ? SD,SD ? DEAN 函数依赖 范例 关系模式S(S# , SN , SD , DEAN , C# , G) 主码:(S#,C#) 函数依赖: 范式 定义 范式是对关系的不同数据依赖程度的要求 通过模式分解将一个低级范式转换为若干个高级范式的过程称作规范化(概念的纯粹化) 1NF 定义 关系中每一分量不可再分。即不能以集合、序列等作为属性值 1NF 分量是否需要再分,与具体应用有关。如果用到值的一部分,则需要进一步分割 如果只是查询出生日期,则它满足1NF 如果查询两人生日是否相同,则只比较月、日,需要将生日分解,就不满足1NF 如果比较两人的生肖呢? 2NF 关系模式S(S# , SN , SD , DEAN , C# , G) 不良特性 插入异常:如果学生没有选课,关于他的个人信息及所在系的信息就无法插入 删除异常:如果删除学生的选课信息,则有关他的个人信息及所在系的信息也随之删除了 更新异常:如果学生转系,若他选修了k门课,则需要修改k次 数据冗余:如果一个学生选修了k门课,则有关他的所在系的信息重复 2NF 定义 若R?1NF,且每个非主属性完全依赖于码,则称R?2NF 消除非主属性对码的部分依赖 如S?2NF,因为 2NF 改造 非主属性有两种,一种完全依赖于码,一种部分依赖于码。 将S分解为: SC(S# , C# , G) S_SD(S# , SN , SD , DEAN) 快速热身 关系模式R(A,B,C,D),码为AB,给出它的一个函数依赖集,使得R属于1NF而不属于2NF 3NF S_SD(S# , SN , SD , DEAN) 不良特性 插入异常:如果系中没有学生,则有关系的信息就无法插入 删除异常:如果学生全部毕业了,则在删除学生信息的同时有关系的信息也随之删除了 更新异常:如果学生转系,不但要修改SD,还要修改DEAN,如果换系主任,则该系每个学生元组都要做相应修改 数据冗余:每个学生都存储了所在系的系主任的信息 3NF 定义 关系模式R U , F 中,若不存在这样的码X,属性组Y及非主属性Z(Z Y),使得下式成立, X?Y , Y?Z , Y?X 则称R?3NF 消除非主属性对码的传递依赖 如S_SD ?3NF,因为有S#?SD,SD?DEAN 3NF 改造 将S分解为 STUDENT(S# , SN , SD) DEPT(SD , DEAN) 快速热身 关系模式R(A,B,C,D),码为AB,给出它的一个函数依赖集,使得R属于2NF而不属于3NF BCNF 示例 STC(S# , T# , C#), T# ? C#,每位老师只教授一门课 (S#,T#)? C# (S#,C#

文档评论(0)

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

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

1亿VIP精品文档

相关文档