文档详情

数据库上课第十讲关系数据理论与范式分析.ppt

发布:2017-04-13约1.35千字共81页下载文档
文本预览下载声明
主讲: 顾 曦 电话Email:guxi@ ;主要内容;;1.1 回顾:关系模式的形式化定义;简化表示;1.2 数据冗余;出现的问题;数据冗余带来的问题;数据冗余产生原因及解决方法;如何分解;studentNo; 模式分解存在的问题;一个“好”的关系模式;问题?;;2.1 函数依赖定义 ;例;函数依赖说明;2.2 平凡与非平凡函数依赖 ;2.3 完全函数依赖和部分函数依赖 ;举例;2.4 传递函数依赖;[例5.4] ;2.5 码;主属性与非主属性;例:;2.6 外部码;;3.1 函数依赖集闭包 ;函数依赖集闭包;Armstrong公理及推论;函数依赖集闭包计算举例; 3.2 属性集闭包 ; 属性集闭包计算举例;计算属性集闭包的作用;判断属性集是否为候选码举例;3.3 无关属性;[例5.9] 设F={ AB→CD, A→E, E→C },证明C 在AB→CD中为无关属性。 证明: 步骤: 计算F F‘={AB→D, A→E, E→C}下(AB)+:(AB)+=ABCDE; 所以,F‘逻辑蕴含AB→CD,即F‘逻辑蕴含F。 因此,C是AB→CD中的无关属性。证毕。;3.4 正则覆盖;计算F的正则覆盖Fc的步骤;关于验证无关属性的方法;计算正则覆盖举例;去除无关属性: 对于AB→C,根据图5-9(a)的算法可检测 A是无关的。因此,去除无关属性 A后,AB→C变为B→C,而B→C已在F中存在,则F={B→C, A→BC}。 对于B→C,由于其左右两边都为单属性,故不存在无关属性。 对于A→BC,根据图5-9(b)的算法可检测C是无关的。因此,去除无关属性C后,A→BC变为A→B,则F={B→C, A→B}。 F中的函数依赖左半部都是唯一的,且都不存在无关属性,因此Fc={B→C, A→B}。 ;正则覆盖说明;函数依赖小结;; 范式概述;各种范式之间存在联系;4.1 第一范式(1NF) ——码 ;问题:例4.1(参考教材 p175);非主属性Sdept和Sloc部分函数依赖于码(Sno, Cno) ;出现的问题:;4.2 第二范式(2NF) ——全部码 ;修改例4.1;问题:;4.3 第三范式(3NF) ——仅仅是码;第三范式的目标是:去掉表中不依赖于主码的数据。 在满足第二范式的实体中,非主属性不能依赖于另一个非主属性,即所有的非主属性应该直接依赖于全部的主属性(即必须完全依赖,这是2NF的要求),并且彼此之间无相互依赖关系(即不能存在部分依赖,这是3NF的要求)。 换一句话说,非主属性不能包括它们自己的属性,如果属性不包括属性,则它们就是真正的实体。;例 3NF解决办法;问题:;问题:;BCNF;推论;3NF的问题;BC范式判断举例;3NF与BCNF比较;关系模式规范化的基本步骤;规范化小结; 5.1 无损连接分解 5.2 保持依赖分解;模式的分解的概念;5.1 无损连接分解 ;无损连接分解判断方法;5.2 保持依赖分解;;定义;模式求精步骤 ;模式求精举例;步骤1. 分析函数依赖关系及判断范式;步骤2. 模式分解;;模式求精举例;小结
显示全部
相似文档