[理学]5关系数据库理论1.ppt

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

第五部分 关系数据库理论 关系数据库的规范化设计是指面对一个应用问题,如何选择一个比较好的关系模式集合。 5.1 数据库设计的基本问题 5.2 关系规范化 5.3 数据依赖的公理系统 5.4 模式分解 其中数据依赖是核心,它研究数据之间的联系。范式是关系模式的标准,而模式设计方法是自动化设计的基础。规范化设计理论对关系数据库结构的设计起着重要的作用。 教学目的与要求 5.1数据库设计的基本问题 1.数据依赖   一个数据库模式是数据库中包含的所有关系模式的集合,因此,关系数据库设计实际上就是从多种可能的组合中选取一组合适的或者说性能相对好的关系模式集合作为数据库模式的问题。 如何才能找到,首先需要了解数据依赖的概念,作为数据内在的一种性质,数据依赖在关系数据库设计中起着核心的作用。(模式设计的核心) 5.1数据库设计的基本问题 (2)数据依赖的类型 ?函数依赖(Functional Dependency,简记为FD) ?多值依赖(Multivalued Dependency,简记为MVD) ?连接依赖(Join Dependency,简记为JD) 5.1数据库设计的基本问题 5.1 关系模式设计的基本问题 2.关系模式的存储异常 案例:学校信息管理系统中要建立一个数据库来描述学 生和选课的一些信息,面临的对象有:学号、姓名、班级名、班主任、课号、成绩。 由现实世界的已知事实可以得知上述对象之间有如下对应关系: (l)一个班级有若干学生,但一个学生只属于一个班级; (2)一个班级只有一名班主任; (3)一个学生可选修多门课程,每门课程有若干学生选修; (4)每个学生学习每一门课程有一个成绩。 如何设计一个合理的关系数据库模式? 5.1 关系模式设计基本问题 方案1:采用一个总的关系模式,将这些对象都放在ST中。 ST(学号,姓名,班级名,班主任,课号,成绩) (1)数据冗余 每个班的班主任信息多次重复出现,导致数据冗余太大,既浪费存储空间,又容易造成数据的不一致性。 (2)插入异常 插入异常指的是应该插入的信息不能正常插入,例如,新生刚入学但还没有安排课程就无法把该班及相应班主任信息插入到数据库。 (3)删除异常 删除异常指的是不该删除的信息被删除了,例如,当一个班的全部学生毕业了,在删除该班学生信息时就会将该班及班主任信息也删除了。 (4) 修改复杂 5.1 关系模式设计的基本问题 结论: 该关系模式不是一个好的模式。 “好”的模式:不会发生插入异常、删除异常、更新异常,数据冗余应尽可能少。 提出问题: ? 怎样评价一个关系模式的优劣; ? 怎样将一个不理想的关系模式分解为较好的关系模式。 原因: 在该例中班主任属性不仅函数依赖于班级,而且还依赖于学号。正是由于属性间约束关系太强才造成了上述异常现象。 解决方法:通过分解关系模式来消除其中不合适的依赖。 如:将ST分解为3个关系模式: S(学号,姓名,班级名)、D(班级名,班主任) SC(学号,课号,成绩) 5.1 关系模式设计基本问题 由此可见: (1)关系模型中用关系来描述实体及其联系,对同一现实世界可用不同的关系模式来描述,但不同的关系模式的效果却有很大差异。 (2)判断是否存在插入异常、删除异常和更新异常以及是否存在数据冗余可以成为关系模式的非形式化设计准则,这是一种直观的判断一个关系模式设计质量的方法。 (3)第二方案在性能上优于第一方案的根本原因在于消除方案一中不合理的一些数据依赖。 (4)如何消除不合理的数据依赖,将一个“不好”的关系模式改造为一个“好”的关系模式,这就是关系数据库设计过程中要讨论的规范化理论问题。 5.1 关系模式设计基本问题 ■关系模式应满足的基本要求 元组的每个分量必须是最小的不可分割的数据项; 数据冗余尽可能少; 不可产生插入、删除、修改异常; 数据库设计者应考虑查询要求,数据组织要合理。 5.1 关系模式设计基本问题 尽管非形式化设计准则为直观判断数据库的性能提供了一定的依据,但有没有一种形式化的方法,来评价模式设计的优劣呢?这就是接下来要讨论的问题。 5.2 规范化 规范化理论正是用来改造关系模式,通过分解关系模式来消除其中不合适的数据依赖,以解决插入异常、删除异常、更新异常和数据冗余问题 5.2 规范化 1、函数依赖(Functional Dependencies,

文档评论(0)

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

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

1亿VIP精品文档

相关文档