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

An Introduction to Database Systems 本章目标: 本章主要介绍关系数据库的规范化理论,要求对关系模式设计中可能出现的问题及其产生原因以及解决的途径、分解的原则和方法进行理解和掌握。 本章重要概念 (1)关系模式的冗余和异常问题。 (2)FD的定义、逻辑蕴涵、闭包、推理规则、与关键码的联系;平凡的FD;属性集的闭包;推理规则的正确性和完备性;FD集的等价;最小依赖集。 (3)无损分解的定义、性质、测试;保持依赖集的分解。 (4)关系模式的范式:1NF,2NF,3NF,BCNF。分解成2NF、3NF模式集的算法。 前 言 问题的提出与分析 数据库理论与设计中有一个重要的问题,就是在一个数据库中如何构造合适的关系模式,它涉及一系列的理论与技术,从而形成了关系数据库设计理论。由于合适的关系模式要符合一定的规范化要求,所以又可称为关系数据库的规范化理论。 前 言 关系数据库的规范化设计是指面对一个现实问题,如何选择一个比较好的关系模式集合。 规范化设计理论主要包括三个方面的内容:数据依赖、范式和模式设计方法。 其中数据依赖起着核心的作用。数据依赖研究数据之间的联系,范式是关系模式的标准,模式设计方法是自动化设计的基础。 规范化设计理论对关系数据库结构的设计起着重要的作用。 第4章 关系数据库的规范化设计 4.1 关系模式的设计问题 4.2 函数依赖 4.3 关系模式的分解特性 4.4 关系模式的范式 第4章 关系数据库的规范化设计 4.1 关系模式的设计问题 4.2 函数依赖 4.3 关系模式的分解特性 4.4 关系模式的范式 4.1.1 关系模型的外延和内涵 外延就是通常所说的关系、表或当前值。由于用户经常对关系进行插入、删除和修改操作,因此外延是与时间有关的,随着时间的推移在不断变化。 内涵是与时间独立的,是对数据的定义以及数据完整性约束的定义。对数据的定义包括对关系、属性、域的定义和说明。对数据完整性约束的定义涉及面较广,主要包括以下几个方面: 静态约束,涉及到数据之间联系(称为“数据依赖,data dependences)、主键和值域的设计。 动态约束,定义各种操作(插入、删除、修改)对关系值的影响。 4.1.2 关系模式的冗余和异常问题(一) 例4.1 4.1.2 关系模式的冗余和异常问题(二) 数据冗余 如果一个教师教几门课程,那么这个教师的地址就要重复几次存储。 4.1.2 关系模式的冗余和异常问题(三) 问题分析 问题的分析 这两类现象的根本原因在于关系的结构。 一个关系可以有一个或者多个候选键,其中一个可以选为主键。主键的值唯一确定其他属性的值,它是各个元组型和区别的标识,也是一个元组存在的标识。这些候选键的值不能重复出现,也不能全部或者部分设为空值。本来这些候选键都可以作为独立的关系存在,在实际上却是不得不依附其他关系而存在。这就是关系结构带来的限制,它不能正确反映现实世界的真实情况。 问题分析 如果在构造关系模式的时候,不从语义上研究和考虑到属性间的这种关联,简单地将有关系和无关系的、关系密切的和关系松散的、具有此种关联的和有彼种关联的属性随意编排在一起,就必然发生某种冲突,引起某些“排它”现象出现,即冗余度水平较高,更新产生异常。 解决问题的根本方法就是将关系模式进行分解,也就是进行所谓关系的规范化。 问题分析 问题的解决方案 由上面的讨论可以知道,在关系数据库的设计当中,不是随便一种关系模式设计方案都是可行的,更不是任何一种关系模式都是可以投入应用的。由于数据库中的每一个关系模式的属性之间需要满足某种内在的必然联系 因此,设计一个好的数据库的根本方法是先要分析和掌握属性间的语义关联,然后再依据这些关联得到相应的设计方案。 问题的解决方案 目前而言,人们认识到属性之间一般有两种依赖关系, 一种是函数依赖关系 一种是多值依赖关系。 说明: 函数依赖关系与更新异常密切相关,多值依赖与数据冗余密切联系。基于对这两种依赖关系不同层面上的具体要求,人们又将属性之间的联系分为若干等级,这就是所谓的关系的规范化(normalization)。 由此看来,解决问题的基本方案就是分析研究属性之间的联系,按照每个关系中属性间满足某种内在语义条件,也就是按照属性间联系所处的等级规范来构造关系。由此产生的一整套有关理论称之为关系数据库的规范化理论。 规范化理论是关系数据库设计中的最重要部分。 第4章 关系数据库的规范化设计 4.1 关系模式的设计问题 4.2 函数依赖 4.3 关系模式的分解特性 4.4 关系模式的范式 一、函数依赖 一、函数依赖 一、函数依赖 函数依赖(续) 例: Student(Sno,

文档评论(0)

文档精品 + 关注
实名认证
内容提供者

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

版权声明书
用户编号:6203200221000001

1亿VIP精品文档

相关文档