文档详情

第6章数据库系统概论(第4版)报告.ppt

发布:2017-01-14约2.62万字共183页下载文档
文本预览下载声明
第六章 关系数据理论 本章目标:关系数据理论既是关系数据库的重要理论基础也是数据库逻辑设计的理论指南和有力工具。要掌握规范化理论和优化数据库模式设计的方法。 第六章 关系数据理论 6.1 问题的提出 6.2 规范化 6.3 数据依赖的公理系统 *6.4 模式的分解 6.5 小结 重点和难点 重点: 了解什么是一个“不好”的数据库模式 什么是模式的插入异常和删除异常 规范化理论的重要意义 掌握数据依赖的基本概念,范式的概念,从1NF到4NF的定义,规范化的含义和作用 四个范式的理解与应用,各个级别范式中存在的问题和解决方法。 难点:各个级别范式的关系 6.1 问题的提出 一.概念回顾 二.问题的提出 三.关系模式的形式化定义 四.什么是数据依赖 五.数据依赖对关系模式影响 一.概念回顾 关系 关系数据模型 关系数据库 关系数据模式 二.问题的提出 给出一组数据 如何构造一个适合于它的关系数据模式 使用什么标准来鉴别相应设计合理与否 若不合理应如何改进 ----提出了数据模式的设计问题(关系数据理论) 关系模式的设计问题 关系数据库模式是关系模式的集合 关系数据库模式={关系模式} 关系数据库模式设计就是要确定: 有几个关系模式 每个关系模式的名称、属性组成 域的定义和说明 数据完整性的要求等 三.关系模式的形式化定义 关系模式由五部分组成,即它是一个五元组: R(U, D, DOM, F) R:关系名 U:组成该关系的属性名集合 D:属性组U中属性所来自的域 DOM:属性向域的映象集合 F:属性间数据的依赖关系集合 关系模式的形式化定义 关系模式R(U, D, DOM, F) 简化为一个三元组:R(U, F) U:组成该关系的属性名集合 F:属性间数据的依赖关系集合 当且仅当U上的一个关系r满足F时,r称为关系模式 R(U, F)的一个关系 关系最基本的规范条件:关系的每一个分量必须是一个不可分的数据项----1NF 四.什么是数据依赖 1.完整性约束的表现形式 限定属性取值范围:例如学生成绩必须在0-100之间 定义数据表之间属性值的相互关连 什么是数据依赖(续) 3.数据依赖的类型 函数依赖(Functional Dependency,简记为FD) 多值依赖(Multivalued Dependency,简记为MVD) 其他 五.数据依赖对关系模式的影响 函数依赖:指关系中一个或一组属性的值可以决定其它属性的值 函数依赖正象一个函数y=f(x) ----x的值给定后,y的值也就唯一地确定了 数据依赖对关系模式的影响 [例1]建立一个描述学校教务的数据库: 学生的学号(Sno)、所在系(Sdept)、 系主任姓名(Mname)、课程名(Cname)、 成绩(Grade) 单一的关系模式 :Student U、F U={Sno,Sdept,Mname,Cname,Grade} 数据依赖对关系模式的影响(续) 属性组U上的一组函数依赖F: F={Sno→Sdept,Sdept→Mname, (Sno,Cname)→Grade} 数据依赖对关系模式的影响(续) 关系模式 :Student U,F U={Sno,Sdept,Mname,Cname,Grade} F={Sno→Sdept,Sdept→Mname, (Sno,Cname)→Grade} 关系模式Student的一个实例 关系模式StudentU,F中存在的问题 1. 数据冗余太大 2. 更新异常(Update Anomalies) 3. 插入异常(Insertion Anomalies) 4. 删除异常(Deletion Anomalies) 关系模式StudentU,F中存在的问题 数据冗余太大 浪费大量的存储空间 例:每一个系主任的姓名重复出现 更新异常(Update Anomalies) 数据冗余,更新数据时,维护数据完整性代价大 例:某系更换系主任后,须修改与该系学生有关的每个元组 关系模式StudentU,F中存在的问题 插入异常(Insertion Anomalies) 该插的数据插不进去 例:若一个系刚成立,尚无学生,就无法存入该系及其系主任的信息 删除异常(Deletion Anomalies) 不该删除的数据不得不删 例:若某个系的学生全部毕业了,则在删除该系学生信息的同时,会把该系及其系主任的信息也同时删除 数据依赖对关系模式的影响(续) 结论: Student关系模式不是一个好的模式。 “好”的模式: 不会发生插入异常、删除异常、更新异常 数据冗余应尽可能
显示全部
相似文档