文档详情

数据库系统概论5关系数据库设计理论.ppt

发布:2018-06-19约2.59万字共175页下载文档
文本预览下载声明
《数据库原理》 第五章 关系数据库设计理论 计通学院计算机科学系 问题的提出 关系数据库的基本概念 关系模型 关系数据库的标准语言 关系数据库逻辑设计 针对一个具体问题,应如何构造一个适合于它的数据模式,即应该构造几个关系,每个关系由哪些属性组成等。 数据库逻辑设计的工具──关系数据库的规范化理论 第5章 关系数据库设计理论 5.1 数据依赖 5.2 范式 5.3 关系模式的规范化 5.4 数据依赖的公理系统 5.1 数据依赖 内容提要 什么是数据依赖 数据依赖对关系模式有什么影响 数据依赖的形式化定义 5.1 数据依赖 5.1.1 关系模式中的数据依赖 5.1.2 数据依赖对关系模式的影响 5.1.3 有关概念 5.1.1 关系模式中的数据依赖 一、概念回顾 二、关系模式的形式化定义 三、关系模式的简化表示 四、什么是数据依赖 一、概念回顾 关系 关系模式 关系数据库 关系数据库的模式 二、关系模式的形式化定义 关系模式由五部分组成,即它是一个五元组: R(U, D, DOM, F) R: 关系名 U: 组成该关系的属性名集合 D: 属性组U中属性所来自的域 DOM: 属性向域的映象集合 F: 属性间数据的依赖关系集合。即限定 了组成关系的各个元组必须满足的完 整性约束条件。 三、关系模式的简化表示 关系模式R(U, D, DOM, F) 简化为一个三元组: R(U, F) 当且仅当U上的一个关系r满足F时,r称为关系模式 R(U, F)的一个关系 四、什么是数据依赖 1. 完整性约束的表现形式 限定属性取值范围:例如学生成绩必须在0-100之间 定义属性值间的相互关连(主要体现于值的相等与否),这就是数据依赖,它是数据库模式设计的关键。 什么是数据依赖(续) 2. 数据依赖 是通过一个关系中属性间值的相等与否体现出来的数据间的相互关系 是现实世界属性间相互联系的抽象 是数据内在的性质 是语义的体现 什么是数据依赖(续) 3. 数据依赖的主要类型 函数依赖(Functional Dependency,简记为FD) 多值依赖(Multivalued Dependency,简记为MVD) 其他,如连接依赖 5.1 数据依赖 5.1.1 关系模式中的数据依赖 5.1.2 数据依赖对关系模式的影响 5.1.3 有关概念 5.1.2 数据依赖对关系模式的影响 [例]:建立一个描述学校教务的数据库。 涉及的对象包括: 学生的学号(Sno) 所在系(Sdept) 系主任姓名(Mname) 课程名(Cname) 成绩(Grade) 单一的关系模式 : Student U、F U ={ Sno, Sdept, Mname, Cname, Grade } 数据依赖对关系模式的影响(续) 现实世界的已知事实告诉我们: 1. 一个系有若干学生, 但一个学生只属于一个系; 2. 一个系只有一名主任; 3. 一个学生可以选修多门课程, 每门课程有若干学生选修; 4. 每个学生所学的每门课程都有一个成绩。 数据依赖对关系模式的影响(续) 由此可得到属性组U上的一组函数依赖F: F ={ Sno → Sdept, Sdept → Mname, (Sno, Cname) → Grade } 数据依赖对关系模式的影响(续) 某一时刻关系模式student的一个实例 数据依赖对关系模式的影响(续) 关系模式StudentU, F中存在的问题: 1. 数据冗余太大 2. 更新异常(Update Anomalies) 3. 插入异常(Insertion Anomalies) 4. 删除异常(Deletion Anomalies) 数据依赖对关系模式的影响(续) 结论:Student关系模式不是一个好的模式。 一个“好”的模式应当不会发生插入异常、删除异常、更新异常,数据冗余应尽可能少。 原因:由存在于模式中的某些数据依赖引起的。 解决方法:通过分解关系模式来消除其中不合适 的数据依赖。 数据依赖对关系模式的影响(续) 把这个单一模式分成3个关系模式: S(Sno,Sdept,Sno → Sdept); SC(Sno,Cno,Grade,(Sno,Cno) → Grade); DEPT(Sdept,Mname,Sdept→ Mname) 数据依赖对关系模式的
显示全部
相似文档