4.1关系规范化的引入(课件)-《数据库应用技术-SQL Server》同步教学(人民邮电版)

2024-03-21
| 21页
| 38人阅读
| 0人下载
普通

内容正文:

关系数据库规范化理论 第4章 目录 01 关系规范化 的引入 02 函数依赖 03 函数依赖的 公理系统 04 关系模式的 规范化 05 多值依赖 与4NF 06 关系模式分解 及规范化步骤 本章主要内容 通过第2、3章的学习,学生可以完成数据库关系模型的设计及实现。每种关系模型对应一种关系模式,关系模式的好坏直接决定数据的完整性、准确性、一致性和操作性。然而,是不是所有满足关系模型的关系模式设计都是“最好”的设计?不同的关系模式设计会出现什么样的问题?有没有什么理论标准来评价或者优化该关系模式,使其成为“更好”的关系模式设计? 本章重点内容是学习如何针对具体的应用项目,从概念模型设计出发,通过不断优化,实现一个“较好”的数据库关系模式设计。其内容包括关系模式设计存在的常见问题,关系模式中属性间依赖关系及函数依赖的公理系统理论,最小函数依赖集及其求解算法,范式及其转换步骤和多属性之间的依赖关系。 关系规范化的引入 第4章 01 4.1.1 规范化问题的提出 1.不合理的关系模式存在的异常问题 数据库系统设计的关键是关系模式设计,关系模式设计的好坏会直接影响数据库的性能,不好的关系模式设计可能会导致系统库信息庞大,出现数据删除、更新及插入异常问题。 下面结合前面介绍的“教学管理系统”,设计一个教学管理的关系模式,并判断其关系模式设计的好坏,分析该关系模式存在什么样的问题。 4.1.1 规范化问题的提出 【例4.1】假设有一个关于教学管理的关系模式TC(U),属性集U包括SNo、SN、Sex、DN、CN、TN、Score。其中,SNo为学生学号,SN为学生姓名,Sex为学生性别,DN为学生所在院系名,CN为学生所选的课程名称,TN为任课教师姓名,Score为学生选修课程的成绩。根据常规语义,分析TC关系模式的主键,并分析如果给TC关系模式添加具体数据,是否存在问题。如果存在问题,存在什么样的问题? 解:根据语义分析,教学管理关系的关系模式TC为: TC(SNo,SN,Sex,DN,CN,TN,Score) 经分析,只有SNo、CN可以唯一地决定其他属性,即该关系模式的主键为(SNo,CN)。 4.1.1 规范化问题的提出 下面为该关系模式TC添加部分具体数据如表4.1所示。 表4.1 TC表的部分数据 元组 三个元组 数据冗余 插入异常 删除异常 更新异常 根本原因:属性间存在着数据依赖关系 4.1.1 规范化问题的提出 2.一个好的关系模式应该具备以下四个条件: (1)尽可能少的数据冗余 (2)没有插入异常 (3)没有删除异常 (4)没有更新异常 4.1.2 问题解决的方法 数据依赖(Data Independence):同一个关系模式中各个属性之间存在某种依赖关系。 由于关系模式中各个属性间的数据依赖处理不合理,就会产生大量的数据冗余。为了降低数据冗余,解决数据间的依赖关系,常常通过对关系模式进行分解的方式改善关系模式设计,降低数据冗余。 如在例4.1中,教学关系模式TC可以分解为三个关系模式: 学生基本信息S(SNo,SN,Sex,DN) 课程信息C(CNo,CN,TN) 学生成绩信息SC(SNo,CNo,Score) 4.1.2 问题解决的方法 模式分解 4.1.3 关系模式规范化的概念 在一个关系模式中,属性间的关系表现为一个属性子集对另一个属性子集的“依赖”关系,其中依赖关系可以分为“一对一”“一对多”和“多对一”的依赖关系。 “一对一”的依赖关系是最简单的关系; “多对一”的依赖关系是目前数据库设计中最为常见的,我们称之为“函数依赖”; “一对一”的依赖关系的研究相当复杂,到目前为止,人们认识到两种属性之间存在有用的“一对多”是多值依赖关系和连接依赖关系。 针对以上3种依赖关系在不同层面上的具体要求,人们又将属性之间的这些关联分为若干等级,这就形成了所谓的关系的规范化(Relation Normalization)。 函数依赖 第4章 02 4.2.1 函数依赖的定义 关系模式中的各属性之间相互依赖、相互制约的联系称为数据依赖。 多值依赖 函数依赖 函数依赖(FD,Functional Dependency)是关系模式中属性之间的一种逻辑依赖关系。 例如:SCD (SNo,SN,Age,Dept,MN,CNo,Score) SNO SN,Age,Dept 一个学生 SNo (SN,Age,Dept) (SN,Age,Dept)函数依赖于SNo 4.2.1 函数依赖的定义 定义:设R(U,F)是一个关系模式,U是R的属性集合,F是由U上函数依赖所构成的集合,X和Y是U的子集。对于R(U)的任意一个可能关系r,r中不存在任意两个元组在X上的属性值相同,且在Y上的属性值不同,则称“X

资源预览图

4.1关系规范化的引入(课件)-《数据库应用技术-SQL Server》同步教学(人民邮电版)
1
4.1关系规范化的引入(课件)-《数据库应用技术-SQL Server》同步教学(人民邮电版)
2
4.1关系规范化的引入(课件)-《数据库应用技术-SQL Server》同步教学(人民邮电版)
3
4.1关系规范化的引入(课件)-《数据库应用技术-SQL Server》同步教学(人民邮电版)
4
4.1关系规范化的引入(课件)-《数据库应用技术-SQL Server》同步教学(人民邮电版)
5
4.1关系规范化的引入(课件)-《数据库应用技术-SQL Server》同步教学(人民邮电版)
6
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。