第6章数据库系统概论(第4版)ppt课件.ppt
《第6章数据库系统概论(第4版)ppt课件.ppt》由会员分享,可在线阅读,更多相关《第6章数据库系统概论(第4版)ppt课件.ppt(183页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 本章目标:本章目标:关系数据理论既是关系关系数据理论既是关系数据库的重要理论基础也是数据库逻辑数据库的重要理论基础也是数据库逻辑设计的理论指南和有力工具。要掌握规设计的理论指南和有力工具。要掌握规范化理论和优化数据库模式设计的方法。范化理论和优化数据库模式设计的方法。第六章第六章 关系数据理论关系数据理论2022-6-62 2第六章第六章 关系数据理论关系数据理论6 6.1 .1 问题的提出问题的提出6 6.2 .2 规范化规范化6 6.3 .3 数据依赖的公理系统数据依赖的公理系统* *6 6.4 .4 模式的分解模式的分解6 6.5 .5 小结小结3 3重点和难点重点和难点o重点:重点:
2、n 了解什么是一个了解什么是一个“不好不好”的数据库模式的数据库模式n 什么是模式的插入异常和删除异常什么是模式的插入异常和删除异常n 规范化理论的重要意义规范化理论的重要意义n 掌握数据依赖的基本概念,范式的概念,掌握数据依赖的基本概念,范式的概念,从从1NF1NF到到4NF4NF的定义,规范化的含义和作用的定义,规范化的含义和作用n 四个范式的理解与应用,各个级别范式中四个范式的理解与应用,各个级别范式中存在的问题和解决方法。存在的问题和解决方法。o难点难点: :各个级别范式的关系各个级别范式的关系4 46.1 6.1 问题的提出问题的提出一一. .概念回顾概念回顾二二. .问题的提出问题
3、的提出三三. .关系模式的形式化定义关系模式的形式化定义四四. .什么是数据依赖什么是数据依赖五五. .数据依赖对关系模式影响数据依赖对关系模式影响5 5一一.概念回顾概念回顾o关系关系o关系数据模型关系数据模型o关系数据库关系数据库o关系数据模式关系数据模式6 6二二.问题的提出问题的提出o给出一组数据给出一组数据n 如何构造一个适合于它的如何构造一个适合于它的关系数据关系数据模式模式n 使用什么标准来鉴别相应设计合理与否使用什么标准来鉴别相应设计合理与否n 若不合理应如何改进若不合理应如何改进 -提出了数据模式的设计问提出了数据模式的设计问题题( (关系数据理论关系数据理论) )7 7关系
4、模式的设计问题关系模式的设计问题o关系数据库模式是关系模式的集合关系数据库模式是关系模式的集合 关系数据库模式关系数据库模式=关系模式关系模式 o关系数据库模式设计就是要确定关系数据库模式设计就是要确定: :n 有几个关系模式有几个关系模式n 每个关系模式的名称、属性组成每个关系模式的名称、属性组成n 域的定义和说明域的定义和说明n 数据完整性的要求等数据完整性的要求等8 8三三.关系模式的形式化定义关系模式的形式化定义o关系模式由五部分组成关系模式由五部分组成, ,即它是一个五元即它是一个五元组:组: R(U, D, DOM, F)R(U, D, DOM, F)R R:关系名:关系名U U:
5、组成该关系的属性名集合:组成该关系的属性名集合D D:属性组:属性组U U中属性所来自的域中属性所来自的域DOMDOM:属性向域的映象集合:属性向域的映象集合F F:属性间数据的依赖关系集合:属性间数据的依赖关系集合即分别说明它们即分别说明它们分别来自哪个域分别来自哪个域9 9关系模式的形式化定义关系模式的形式化定义o 关系模式关系模式R R(U, D, DOM, FU, D, DOM, F) 简化为一个三元组:简化为一个三元组:R R(U, FU, F)n U U:组成该关系的属性名集合:组成该关系的属性名集合n F F:属性间数据的依赖关系集合:属性间数据的依赖关系集合o 当且仅当当且仅当
6、U U上的一个关系上的一个关系r r满足满足F F时,时,r r称为称为关关系模式系模式 R R(U, FU, F)的一个)的一个关系关系o 关系最基本的规范条件:关系的每一个分关系最基本的规范条件:关系的每一个分量必须是一个不可分的数据项量必须是一个不可分的数据项-1NF-1NF1010四四.什么是数据依赖什么是数据依赖1.1.完整性约束的表现形式完整性约束的表现形式n 限定属性取值范围:例如学生成绩必须在限定属性取值范围:例如学生成绩必须在0-1000-100之间之间n 定义数据表之间属性定义数据表之间属性值值的相互关连的相互关连2. 2. 数据依赖数据依赖n 一个关系内部属性与属性之间的
7、约束关系一个关系内部属性与属性之间的约束关系n 现实世界属性间相互联系的抽象现实世界属性间相互联系的抽象n 数据内在的性质数据内在的性质n 语义语义的体现的体现1111什么是数据依赖什么是数据依赖( (续续) )3.3.数据依赖的类型数据依赖的类型n 函数依赖函数依赖(Functional Dependency(Functional Dependency,简,简记为记为FD)FD)n 多值依赖多值依赖(Multivalued(Multivalued Dependency Dependency,简,简记为记为MVD)MVD)n 其他其他1212五五.数据依赖对关系模式的影响数据依赖对关系模式的影
8、响o函数依赖:函数依赖:指关系中一个或一组属性的指关系中一个或一组属性的值可以决定其它属性的值值可以决定其它属性的值o函数依赖正象一个函数函数依赖正象一个函数y=f(xy=f(x) )-x-x的值给定后,的值给定后,y y的值也就唯一地确定了的值也就唯一地确定了 1313数据依赖对关系模式的影响数据依赖对关系模式的影响o 例例11建立一个描述学校教务的数据库:建立一个描述学校教务的数据库:学生的学号学生的学号(Sno(Sno) )、所在系、所在系(Sdept(Sdept) )、系主任姓名系主任姓名(Mname(Mname) )、课程名、课程名(Cname(Cname) )、成绩成绩(Grade
9、)(Grade)n 单一的关系模式单一的关系模式 :Student UStudent F U USno,Sdept,Mname,Cname,GradeSno,Sdept,Mname,Cname,Grade1414数据依赖对关系模式的影响数据依赖对关系模式的影响( (续续) )n 属性组属性组U U上的一组函数依赖上的一组函数依赖F F: F FSnoSdept,SdeptMname, SnoSdept,SdeptMname, (Sno,Cname)Grade (Sno,Cname)Grade SnoSnoCnameCnameSdeptSdeptM Mnamname eGradeGrade函数依
10、赖函数依赖:一个或一组一个或一组属性的值可属性的值可以决定其他以决定其他属性的值属性的值 1515数据依赖对关系模式的影响数据依赖对关系模式的影响( (续续) )o 关系模式关系模式 :Student Student n U USno,Sdept,Mname,Cname,GradeSno,Sdept,Mname,Cname,Graden F FSnoSdept,SdeptMnameSnoSdept,SdeptMname, , (Sno,Cname)Grade (Sno,Cname)Grade n 关系模式关系模式StudentStudent的一个实例的一个实例SnoSnoSdeptSdeptM
11、nameMnameCnameCnameGradeGradeS1S1CSCS张明张明数据库数据库9595S2S2CSCS张明张明数据库数据库9090S3S3CSCS张明张明数据库数据库8888S4S4CSCS张明张明数据库数据库70701616关系模式关系模式StudentStudent中存在的问题中存在的问题1. 1. 数据冗余太大数据冗余太大2. 2. 更新异常更新异常(Update Anomalies)(Update Anomalies)3. 3. 插入异常插入异常(Insertion Anomalies)(Insertion Anomalies)4. 4. 删除异常删除异常(Deleti
12、on Anomalies)(Deletion Anomalies)1717关系模式关系模式StudentStudent中存在的问题中存在的问题o数据冗余太大数据冗余太大n 浪费大量的存储空间浪费大量的存储空间 例:每一个系主任的姓名重复出现例:每一个系主任的姓名重复出现o更新异常更新异常(Update Anomalies)(Update Anomalies)n 数据冗余数据冗余, ,更新数据时更新数据时, ,维护数据完整性代维护数据完整性代价大价大n 例:某系更换系主任后例:某系更换系主任后, ,须修改与该系学生须修改与该系学生有关的每个元组有关的每个元组1818关系模式关系模式Student
13、Student中存在的问题中存在的问题o插入异常插入异常(Insertion Anomalies)(Insertion Anomalies)n 该插的数据插不进去该插的数据插不进去n 例:若一个系刚成立,尚无学生,就无法例:若一个系刚成立,尚无学生,就无法存入该系及其系主任的信息存入该系及其系主任的信息o删除异常删除异常(Deletion Anomalies)(Deletion Anomalies)n 不该删除的数据不得不删不该删除的数据不得不删n 例:若某个系的学生全部毕业了,则在删例:若某个系的学生全部毕业了,则在删除该系学生信息的同时,会把该系及其系除该系学生信息的同时,会把该系及其系主
14、任的信息也同时删除主任的信息也同时删除1919数据依赖对关系模式的影响数据依赖对关系模式的影响( (续续) )o结论:结论:n StudentStudent关系模式不是一个好的模式。关系模式不是一个好的模式。n “好好”的模式:的模式:u不会发生插入异常、删除异常、更新不会发生插入异常、删除异常、更新异常异常u数据冗余应尽可能少数据冗余应尽可能少n 原因:原因:模式中的模式中的某些数据依赖某些数据依赖引起引起n 解决方法:分解解决方法:分解关系模式关系模式2020分解关系模式分解关系模式o 把该模式分解成把该模式分解成3 3个关系模式:个关系模式: S(Sno,Sdept,SnoS(Sno,S
15、dept,Sno SdeptSdept);); SC(Sno,Cname,Grade,(Sno SC(Sno,Cname,Grade,(Sno,Cname)GradeCname)Grade);); DEPT(Sdept,Mname,Sdept DEPT(Sdept,Mname,Sdept MnameMname) )n 关系模式关系模式 :Student UStudent FuU USno,Sdept,Mname,Cname,GradeSno,Sdept,Mname,Cname,GradeuF FSnoSdept,SdeptMnameSnoSdept,SdeptMname, , (Sno,Cna
16、me)Grade (Sno,Cname)Grade 2121数据冗余产生原因分析数据冗余产生原因分析o对多个文件和同一文件中数据之间的联对多个文件和同一文件中数据之间的联系考虑不周或处理不当系考虑不周或处理不当 -对数据依赖处理不当,即关系模对数据依赖处理不当,即关系模式本身的结构设计存在缺陷式本身的结构设计存在缺陷2222问题的解决思路问题的解决思路o先分析和掌握属性间的语义关联,然后先分析和掌握属性间的语义关联,然后再依据这些关联得到相应的设计方案再依据这些关联得到相应的设计方案n 一个模式的函数依赖会有哪些不好的性一个模式的函数依赖会有哪些不好的性质,如何改造质,如何改造n 提出并发展了
17、一套关系数据库模式设计提出并发展了一套关系数据库模式设计理论与方法理论与方法-关系模式的规范化理论与技术关系模式的规范化理论与技术 23236 6.2 .2 规范化规范化o规范化理论规范化理论正是用来改造关系模式,通正是用来改造关系模式,通过分解关系模式来消除其中不合适的数过分解关系模式来消除其中不合适的数据依赖,以解决插入异常、删除异常、据依赖,以解决插入异常、删除异常、更新异常和数据冗余问题。更新异常和数据冗余问题。24246 6.2 .2 规范化规范化6.2.1 6.2.1 函数依赖函数依赖6.2.2 6.2.2 码码6.2.3 6.2.3 范式范式6.2.4 2NF6.2.4 2NF6
18、.2.5 3NF6.2.5 3NF6.2.6 BCNF6.2.6 BCNF6.2.7 6.2.7 多值依赖多值依赖6.2.8 4NF6.2.8 4NF6.2.9 6.2.9 规范化小结规范化小结25256 6.2.1 .2.1 函数依赖函数依赖o函数依赖函数依赖o函数依赖的三种类型函数依赖的三种类型n 平凡与非平凡函数依赖平凡与非平凡函数依赖n 部分与完全函数依赖部分与完全函数依赖n 传递与直接函数依赖传递与直接函数依赖o函数依赖与数据冗余函数依赖与数据冗余2626一一.函数依赖函数依赖o 定义定义6.16.1 设设R(U)R(U)是一个属性集是一个属性集U U上的关系模式,上的关系模式,X
19、X和和Y Y是是U U的子集。的子集。 若对于若对于R(U)R(U)的的任意任意一个可能的关系一个可能的关系r r,r r中中不可能存在两个元组在不可能存在两个元组在X X上的属性值相等上的属性值相等, ,而在而在Y Y上的属性值不等上的属性值不等, ,则称则称“X X函数确定函数确定Y Y”或或“Y Y函数依赖于函数依赖于X X”,”,记作记作XYXY。 -指一个或一组属性的值可以决定其他属性的值指一个或一组属性的值可以决定其他属性的值 2727说明说明 o 所有关系实例均要满足所有关系实例均要满足o 语义范畴的概念语义范畴的概念o 数据库设计者可以对现实世界作强制的数据库设计者可以对现实世
20、界作强制的规定规定 -刻画关系各属性之间相互制约而刻画关系各属性之间相互制约而又相互依赖的情况又相互依赖的情况 2828二二.函数依赖的三种类型函数依赖的三种类型1.1.平凡与非平凡函数依赖平凡与非平凡函数依赖2.2.部分与完全函数依赖部分与完全函数依赖3.3.传递与直接函数依赖传递与直接函数依赖2929二二.函数依赖的三种类型函数依赖的三种类型1.1.平凡与非平凡函数依赖平凡与非平凡函数依赖o在关系模式在关系模式R(U)R(U)中,对于中,对于U U的子集的子集X X和和Y Yn 如果如果XYXY,但,但Y Y X X,称,称XYXY是是非平凡的函数非平凡的函数依赖依赖n 若若XYXY,但,
21、但Y Y X,X,则称则称XYXY是平凡的函数依赖是平凡的函数依赖3030平凡与非平凡函数依赖平凡与非平凡函数依赖( (续续) )o例:在关系例:在关系SC(Sno,Cno,GradeSC(Sno,Cno,Grade) )中,中,n 非平凡函数依赖:非平凡函数依赖:(Sno, Cno(Sno, Cno) ) GradeGraden 平凡函数依赖:平凡函数依赖: (Sno, Cno(Sno, Cno) ) SnoSno (Sno, Cno) Cno (Sno, Cno) Cno3131平凡与非平凡函数依赖平凡与非平凡函数依赖( (续续) )n 若若X XY Y,则,则X X称为这个函数依赖的决定
22、属称为这个函数依赖的决定属性组,也称为决定因素性组,也称为决定因素(Determinant)(Determinant)。n 若若X XY Y,Y YX X,则记作,则记作X XY Y。n 若若Y Y不函数依赖于不函数依赖于X X,则记作,则记作X XY Y。3232函数依赖与的三种类型函数依赖与的三种类型2 2. .部分与完全函数依赖部分与完全函数依赖o 定义定义6.26.2 在在R(U)R(U)中,如果中,如果XY,XY,并且对于并且对于X X的任何一个真子集的任何一个真子集X,X,都有都有X Y, X Y, 则称则称Y Y对对X X完全函数依赖,记作完全函数依赖,记作X X F F Y Y
23、。 若若XYXY,但,但Y Y不完全函数依赖于不完全函数依赖于X X,则称,则称Y Y对对X X部分函数依赖,记作部分函数依赖,记作X X P P Y Y。 3333完全部分函数依赖完全部分函数依赖( (续续) )o 例例11中中n ( (Sno,Cno)GradeSno,Cno)Grade是完全函数依赖是完全函数依赖n ( (Sno,Cno)SdeptSno,Cno)Sdept是部分函数依赖是部分函数依赖 -因为因为SnoSdeptSnoSdept成立,且成立,且SnoSno是是(Sno,Cno(Sno,Cno) )的真子集的真子集FP3434函数依赖与的三种类型函数依赖与的三种类型3.3.
24、传递与直接函数依赖传递与直接函数依赖o 定义定义6.36.3 在在R(U)R(U)中,如果中,如果XY,(YXY,(Y X), X), YX,YZYX,YZ,Z ZY,Y,则称则称Z Z对对X X传递函数依赖。传递函数依赖。记为:记为:XZXZ 注注: : 如果如果YXYX,即,即XYXY,则,则Z Z直接依赖于直接依赖于X X。传递传递3535传递函数依赖传递函数依赖o 例例: : 在关系在关系Std(Sno,Sdept,MnameStd(Sno,Sdept,Mname) )中中, ,有:有:nSnoSdeptSnoSdept,n SdeptSnoSdeptSnon SdeptMnameSd
25、eptMname-Mname-Mname传递函数依赖于传递函数依赖于SnoSno3636三三.函数依赖与数据冗余函数依赖与数据冗余o部分函数依赖存在部分函数依赖存在“冗余属性冗余属性”o传递函数依赖表现传递函数依赖表现“间接间接”的弱数据依的弱数据依赖,这是产生数据冗余的主要原因赖,这是产生数据冗余的主要原因 -要消除数据冗余及数据异常现象,就需要消除数据冗余及数据异常现象,就需要处理好关系模式中的部分函数依赖和传递函要处理好关系模式中的部分函数依赖和传递函数依赖数依赖 37376.2.2 6.2.2 码码o定义定义6.46.4 设设K K为为RR中的属性或属性中的属性或属性组合。若组合。若K
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 系统 概论 ppt 课件
限制150内