数据库原理与应用第5章讲述

上传人:最**** 文档编号:117948118 上传时间:2019-12-11 格式:PPT 页数:117 大小:1.31MB
返回 下载 相关 举报
数据库原理与应用第5章讲述_第1页
第1页 / 共117页
数据库原理与应用第5章讲述_第2页
第2页 / 共117页
数据库原理与应用第5章讲述_第3页
第3页 / 共117页
数据库原理与应用第5章讲述_第4页
第4页 / 共117页
数据库原理与应用第5章讲述_第5页
第5页 / 共117页
点击查看更多>>
资源描述

《数据库原理与应用第5章讲述》由会员分享,可在线阅读,更多相关《数据库原理与应用第5章讲述(117页珍藏版)》请在金锄头文库上搜索。

1、1 第五章 关系数据库的规范化理论 第五章 关系数据库的规范化理论 5.1 关系模式设计存在的问题 5.2 函数依赖 5.3 范式理论 5.4 模式分解 2 第五章 关系数据库的规范化理论 5.1 关系模式设计存在的问题 关系数据库逻辑设计 针对一个具体问题, 应如何构造一个适合于它的数据 模式, 即应该构造几个关系, 每个关系由哪些属性组成 等. 数据库逻辑设计的工具关系数据库的规范化理论 关系数据库设计的理论基础是数据依赖 无论层次,网状,还是关系数据库都有一个逻辑设计问 题 基于关系数据模型的设计易于转换成其它数据模型 关系模型具有很好的数学基础-易于开发设计的理 论, 方法和技术 数据

2、库的逻辑设计都是以关系模型为背景 3 第五章 关系数据库的规范化理论 概念回顾 关系: 值 描述实体及其属性、实体间的联系. 从形式上看, 它是一张二维表, 是所涉及属性的笛卡尔积的一个 子集. 是关系模式在某一时刻的状态或内容 是动态的、随时间不断变化的 关系模式: 型 用来定义关系. 是静态的、稳定的 关系数据库: 值 基于关系模型的数据库, 利用关系来描述现实世界. 在一个给定 的应用领域中,所有实体及实体之间联系的关系的集合构成一 个关系数据库. 从形式上看, 它由一组关系组成. 关系数据库的模式: 型 定义这组关系的关系模式的全体. 4 第五章 关系数据库的规范化理论 关系模式的形式

3、化定义 关系模式由五部分组成, 即它是一个五元组: R(U, D, DOM, F) R: 关系名 U: 组成该关系的属性名集合 D: 属性组U中属性所来自的域 DOM: 属性向域的映象集合 F: 属性间间数据的依赖赖关系集合. 即限定 了组成关系的各个元组必须满足的完 整性约束条件. 简化形式: R(U, F) 5 第五章 关系数据库的规范化理论 什么是数据依赖 1. 完整性约束的表现形式 限定属性取值范围: 例如学生成绩必须在0-100之间 定义属性值间的相互关连(主要体现于值的相等与否) , 这就是数据依赖, 它是数据库模式设计的关键. 2. 数据依赖 是通过一个关系中属性间值的相等与否体

4、现出来的数据 间的相互关系 是现实世界属性间相互联系的抽象 是数据内在的性质 是语义的体现 例: 描述学生的属性有SNO, SNAME, SDEPT等, 一个学号只对应于一个学生, 一个学生只在一个系学习 学号确定, 学生的姓名和所在系就唯一确定 SNOSNAMESNOSDEPT 6 第五章 关系数据库的规范化理论 什么是数据依赖(续) 3. 数据依赖的类型 其中最重要的是: 函数依赖赖(Functional Dependency, 简记为简记为 FD) 它反映属性或属性组之间互相依存,互相制约的关 系,即反映现实世界的约束关系。 多值值依赖赖(Multivalued Dependency,

5、简记为简记为 MVD) 属性之间有些虽然没有直接关系,但存在间接的关 系,把没有直接联系、但有间接的联系称为多值依 赖的数据依赖。 7 第五章 关系数据库的规范化理论 数据依赖与关系模式 数据依赖与关系模式存在联系 通过考察数据依赖可以发现不好的设计 利用数据依赖可以由不好的设计得到较好的 设计 例5-1:现有客户-订单关系模式C-O如下: C-O(CustomerID, CompanyName, Address, OrderID)其属性分别为:客户号,客户公司名称 ,公司地址,订单号,如表5-1: 8 第五章 关系数据库的规范化理论 数据依赖与关系模式(续) 表5-1 关系模式C-O Cus

6、tomerID CompanyName Address OrderID 3ANTON Mexico 10251 3ANTON Mexico 10253 3ANTON Mexico 10256 4AROUT London 10250 4AROUT London 10252 5BERGS Lulea 10254 F=OrderID CustomerID, OrderID CompanyName, OrderID Address, CustomerID CompanyName, CustomerID Address 9 第五章 关系数据库的规范化理论 数据依赖与关系模式(续) 关系模式c-o中存在的

7、问题 (1)数据冗余太大 冗余带带来的问题问题 之一: 浪费费大量的存储储空 间间 冗余还还会导导致如下问题问题 24 (2)更新异常(Update Anomalies) 由于数据冗余,更新数据时时,维护维护 数据完 整性代价大。 (3)插入异常(Insertion Anomalies) 该该插的数据插不进进去。 (4)删删除异常(Deletion Anomalies) 不该删除的数据不得不删 10 第五章 关系数据库的规范化理论 数据依赖与关系模式(续) 结论: c-o关系模式不是一个好的模式. 原因: 由存在于模式中的某些多余的数据依赖引 起的. 一个“好”的模式应当不会发生插入异常、删除

8、异 常、更新异常, 数据冗余应尽可能少. 解决方法: 通过分解关系模式来消除其中不合适 的数据依赖. 规范化理论正是用来改造关系模式, 通过分解关 系模式来消除其中不合适的数据依赖, 以解决插 入异常、删除异常、更新异常和数据冗余问题. 11 第五章 关系数据库的规范化理论 表5-2 关系模式C-O的分解 关系C 关系O Customer ID Company Name Address 3ANTON Mexico 4AROUT London 5BERGS Lulea OrderID CustomerID 10251 3 102533 102563 102504 102524 102545 12

9、 第五章 关系数据库的规范化理论 第五章 关系数据库的规范化理论 5.1 关系模式设计存在的问题 5.2 函数依赖 5.3 范式理论 5.4 模式分解 13 第五章 关系数据库的规范化理论 一、函数依赖的定义 定义义5.1 设设R(U)是一个属性集U上的关系模式,X和Y 是U的子集。若对对于R(U)的任意一个可能的关系r,r中 任意两个元组组t和s,若有tX=sX,则则tY=sY,则则称 “X函数确定Y”或“Y函数依赖赖于X”,记记作XY,反之 若Y不函数依赖赖于X, 则记为则记为 X Y。 说说明: 1. 函数依赖赖不是指关系模式R的某个或某些关系实实例满满足 的约约束条件, 而是指R的所有

10、关系实实例均要满满足的约约束 条件。 2. 函数依赖赖是语义语义 范畴的概念,只能根据数据的语义语义 来确 定函数依赖赖,但数据库设计库设计 者可以对现实对现实 世界作强制 的规规定。 14 第五章 关系数据库的规范化理论 例:设设有关系模式R(A,B,C,D)。该该关系 模式有两个关系,如下表所示。 表(a) 表(b) A B在表(a)关系上成立,但A B在表(b)关系 上不成立。 函数依赖的定义(续) ABCD A1B1C1D1 A1B1C2D2 A2B2C3D3 A3B2 C4D4 ABCD A1B1C1D1 A1B2C2D2 A2B2C3D3 D4A3 B1C4 15 第五章 关系数据

11、库的规范化理论 函数依赖(续) 定义义5.2 如果XY, 但Y X, 则则称XY是非平凡的函数依赖赖 。 若XY, 但Y X则则称XY是平凡的函数依赖赖。 若XY, 并且YX, 则记为则记为 X Y。 若XY ,X称为这为这 个函数依赖赖的决定属性组组,也称 为为决定因素。 16 第五章 关系数据库的规范化理论 函数依赖(续) 例: Student(Sno, Sname, Ssex, Sage, Sdept) 假设不允许重名, 则有: Sno Ssex, Sno Sage Sno Sdept, Sno Sname Sname Ssex, Sname Sage Sname Sdept 但Ssex

12、 Sage 例: 在关系SC(Sno, Cno, Grade)中, 非平凡函数依赖: (Sno, Cno) Grade 平凡函数依赖: (Sno, Cno) Sno (Sno, Cno) Cno 17 第五章 关系数据库的规范化理论 函数依赖(续) 对于任一关系模式,平凡函数依赖都是必然成 立的,它不反映新的语义,因此若不特别声明 我们总是讨论非平凡函数依赖。 定义5.3 在关系模式R(U)中, X,Y,Z为为集合U的真子集 若XY, 并且对对于X的任何一个真子集X, 都有 X Y, 则则称Y完全函数依赖赖于X,记记作 X Y。 若XY,并且存在X的一个真子集X, 有 X Y, 则则称Y 部分

13、函数依赖赖于X, 记记作X Y。 若XY,且Y不是X的子集,X函数不依赖赖于Y,Y Z, 则则称Z对对X传递传递 函数依赖赖,记记作X Z 。 F P 传递 18 第五章 关系数据库的规范化理论 函数依赖(续) 例: 在关系SC(Sno, Cno, Grade)中, 由于: Sno Grade, Cno Grade, 因此: (Sno, Cno) Grade 但: (Sno, Cno) Sno, (Sno, Cno) Cno 例: 在关系Std(Sno, Sdept, Mname)中, 有: Sno Sdept, Sdept Mname, Mname传递传递 函数依赖赖于Sno。 F PP 1

14、9 第五章 关系数据库的规范化理论 二、函数依赖与关键字的关系 定义义5.4 设设X为为关系模式R中的属性或属 性组组合。 若X U, 则则X称为为R的一个候选码选码 。 若关系模式R有多个候选码选码 ,则选则选 定其中的一 个做为为主码码。 若干概念 主属性:在任何侯选码选码 中出现现的属性 非主属性/非码码属性: 不在任何候选码选码 中出现现 的属性 全码码: 所有属性构成码码 F 20 第五章 关系数据库的规范化理论 码(续) 例:关系模式S(SNO,SDEPT,SAGE)中,码是SNO 关系模式SC(SNO,CNO,G)中,码是(SNO,CNO) 关系模式S(SNO,ID,AGE,SEX)中,码是SNO或ID 练习:已知R(ABCD),F=BC,D A,BD ABCD,求R的候选码 。 B ABCD, D ABCD, BD ABCD 所以,R的候选码为BD 例: 全码 考虑关系模式R(P,W,A) 其中: P演奏者, W作品, A听众 一个演奏者可以演奏多个作品, 一个作品可以被多个演奏者演奏, 一 个观众可以听不同演奏者的不同作品 任何一个属性都不函数依赖其它属性-R不存在非平凡的函数

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号