关系数据库理论-read.ppt

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

第五章 关系数据库理论 (8学时) 章节目录 §5.1 问题的提出 §5.2 规范化(Normalization) §5.3 数据依赖的公理系统 §5.4 关系模式的分解 §5.1 问题的提出 在现实世界中,进行数据处理或进行数据库应用系统开发的关键是: 针对一个具体问题应该如何构造一个适合于它的数据模式。 即构造合理的数据逻辑结构?这就需要理论指导。 常用的数据模型有:层次、网状、关系模型。 采用关系模型的理由: 关系模型有严格数学理论基础 关系模型可以向别的数据模型转换 关系数据理论(规范化理论)是关系数据库的理论基础,是关系数据库设计指南。 数据库逻辑设计有力工具?关系数据库的规范化理论。 虽然是以关系模型为背景,但是它对于一般的数据库设计同样具有理论上的意义。 关系模式: R(U,D,dom,F)?一个五元组 其中: 影响关系模式涉及合理性的主要因素为U和F,即: 属性 属性间依赖关系, 所以,可以简化为R(U,F); U上每个属性必须是原子值; F是属性组U上的数据依赖; D为中属性所来自的“域”(域名集合); dom为属性向域的映射集合。 属性间的数据依赖关系:数据依赖是数据库理论中最主要的组成部分,是数据库模式的理论基础。是现实世界中属性间相互联系的抽象,它表示数据间存在的一种限制或制约关系。 是一种语义体现; 根据人们对事物的理解判定依赖关系。 数据依赖的(非形式的)概念(P170) 是通过一个关系中属性间值的相等与否体现出来的数据间的相互关系。 数据依赖类型 函数依赖(Functional Dependency,简称FD) 多值依赖(Multivalued Dependency,简称MVD) 连接依赖 函数依赖是最重要的一种数据依赖,极为普遍存在。 就象自变量x确定之后,相应的函数值f(x)也就唯一地确定了一样。 如果属性间的函数依赖关系描述不好,或组织得不合理,将会出现异常情况(例如P171): 插入异常;冗余太大-更新异常;删除异常。 实例:(P171)现在要建立一个数据库(一个关系模式),来描述学生(Student)的一些情况。 由现实世界可得知: 一个系有若干学生,但一个学生只属于一个系。 一个系只有一名(正职)负责人。 一个学生可以选修多门课程,每门课程有若干学生选修。 每个学生学习每一门课程都有一个成绩。 于是,得到属性组U上的一组函数依赖: F={ SNO?SDept,SDept ? MN,(SNO,CName) ? G } 若只考虑函数依赖这一种数据依赖,就得到了: 一个描述学校的数据库模式S<U,F>, 它由一个单一的关系模式构成。 异常产生原因:出现这种情况,是由于 模式中的函数依赖存在不好的性质; 或者说,数据模式组织不合理。 §5.2 规范化(Normalization) 作用:规范化理论?使数据库设计方法走向完备。 起源:1971年E.F.Codd提出。 在讨论规范理论之前,了解函数依赖。 §5.2.1 函数依赖 定义1:设R(U)是属性集U上的关系模式。X,Y是U的子集, 若对于R(U)的任意一个可能的关系r,r中不可能存在两个元组t,s 在X值上相等,即t[X]=s[X]; 而在Y上的属性值不等,即t[Y]?s[Y]; 则称X函数确定Y或Y函数依赖于X,记作:X?Y。 另一种定义为: 设R(U)是属性集U上的一个关系模式, X, YU。 对R(U)中任意一个可能关系r中的任意两个元组t和s, 若有t[X]=s[X], 则有t[Y]=s[Y], 就称“X函数决定Y”, 或“Y函数依赖于X”。 X称为决定因子, 或称为函数依赖的左部, Y称为函数依赖的右部。 或者换个通俗的话 对于X的一个值,Y只有唯一的值与之对应 则称 X?Y 。 函数依赖是一个语义范畴的概念,如: 姓名 ?年龄,姓名 ?出生日期,姓名 ?籍贯 只能在姓名唯一的假设前提下成立。 定义2: 完全函数依赖和部分函数依赖 实例1 存在以下函数依赖: l? SNo ? SName (若无重名) l??SNo ? SDept l SNo ? SAge 实例2 在这里,单个属性不能作为决定因素,但属性的组合可以作为决定因素,即: 实例3 PJTP(*工程项目编号,工程项目名称,*零件编号,零件名,规格型号,数量 ) 定义3: 传递依赖 R(U)中,如果X?Y(Y X), Y X , Y ? Z , X ? Z ,则称Z对X传递函数依赖。 加上条件Y X是因为如果Y ? X ,则 X?Y ,实际上是 ,是直接函数依赖,而不是传递函数依赖。 §5.2.2 码:用函数依赖的概念来定义码。 定义4:设K为R(U,F)中属性

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档