数据库原理及应用第6章-关系数据理论(2学时)

上传人:油条 文档编号:2048928 上传时间:2017-07-19 格式:PPT 页数:32 大小:634.50KB
返回 下载 相关 举报
数据库原理及应用第6章-关系数据理论(2学时)_第1页
第1页 / 共32页
数据库原理及应用第6章-关系数据理论(2学时)_第2页
第2页 / 共32页
数据库原理及应用第6章-关系数据理论(2学时)_第3页
第3页 / 共32页
数据库原理及应用第6章-关系数据理论(2学时)_第4页
第4页 / 共32页
数据库原理及应用第6章-关系数据理论(2学时)_第5页
第5页 / 共32页
点击查看更多>>
资源描述

《数据库原理及应用第6章-关系数据理论(2学时)》由会员分享,可在线阅读,更多相关《数据库原理及应用第6章-关系数据理论(2学时)(32页珍藏版)》请在金锄头文库上搜索。

1、第六章 关系数据理论,学生表:Student,R: 关系名U: 关系的属性名集合D: 属性取值域DOM:属性向域的映像F: 属性间数据的依赖关系,关系模式五元组表示:,R(U, D, DOM, F),Student(U, F)中存在的问题,1. 数据冗余2. 更新异常3. 插入异常4. 删除异常,结论:Student(U,F)关系模式不是一个好的模式,原因:模式中存在某些数据依赖,“好”的模式应具有的特征不会发生插入、删除、更新异常,且数据冗余少。,一、 数据依赖二、 规范化理论,数值依赖是属性值间的相互关联(?=),现实世界关联的抽象关系根源、模式设计的关键数据性质和语义的体现,函数依赖(F

2、unctional Dependency,FD)多值依赖(MultiValued Dependency,MVD),一、 数据依赖,例:描述学校的数据库:学生的学号(Sno)、所在系(Sdept)系主任姓名(Mname)、课程名(Cname)成绩(Grade)单一的关系模式 : Student U Sno, Sdept, Mname, Cname, Grade,属性组U上的函数依赖F:,F Sno Sdept, Sdept Mname, (Sno, Cname) Grade ,二、 规范化理论,规范化理论正是用来改造关系模式的理论。通过分解关系模式来消除其中不合适的数据依赖,以解决插入异常、删除

3、异常、更新异常和数据冗余问题。,函数依赖范式数据规范,函数依赖平凡与非平凡函数依赖完全与部分函数依赖传递函数依赖,例: Student(Sno, Sname, Ssex, Sage, Sdept) 假设不允许重名,则有:Sno Ssex, Sno Sage , Sno Sdept, Sno Sname, Sname Ssex, Sname SageSname Sdept但Ssex Sage,(1)函数依赖,定义 设R(U)是一个属性集U上的关系模式,X和Y是U的子集。若对于R(U)的任意一个可能的关系r,r中不可能存在两个元组在X上的属性值相等, 而在Y上的属性值不等, 则称 “X函数确定Y”

4、 或 “Y函数依赖于X”,记作XY。 X称为这个函数依赖的决定属性集(决定因素)。Y=f(x),说明:,1. 作用范围:所有实例2. 语义相关3. 必要时可强制的规定,例如:规定不允许同名人出现,函数依赖“姓名年龄”成立。,(2)平凡与非平凡函数依赖,在关系模式R(U)中,对于U的子集X和Y,如果XY,但Y X,则称XY是非平凡的函数依赖若XY,但Y X, 则称XY是平凡的函数依赖,例:在关系SC(Sno, Cno, Grade)中, 非平凡函数依赖: (Sno, Cno) Grade 平凡函数依赖: (Sno, Cno) Sno (Sno, Cno) Cno,对于任一关系模式,平凡函数依赖都

5、是必然成立的,它不反映新的语义,因此若不特别声明, 我们总是讨论非平凡函数依赖。,(3)完全与部分函数依赖,定义:在关系模式R(U)中,如果XY,并且对于X的任何一个真子集X,都有: X Y, 则称Y完全函数依赖于X,记作X F Y。 若XY,但Y不完全函数依赖于X,则称Y部分函数依赖于X,记作X P Y。,例: 在关系SC(Sno, Cno, Grade)中, 由于:Sno Grade,Cno Grade, 因此:(Sno, Cno) F Grade 但:(Sno, Cno) P Sdept,(4)传递函数依赖,定义 :在关系模式R(U)中,如果XY,YZ,且Y X,Z Y,则称Z传递函数依

6、赖于X。,例: 在关系Std(Sno, Sdept, Mname)中,有:Sno Sdept,Sdept Mname Mname传递函数依赖于Sno,2. 范式概念,规范化:把一个低一级的关系模式通过模式分解转化为若干个高一级范式的关系模式的集合的过程,称为规范化,3. 规范化,定义,1NF是关系模式的最起码的要求但并非是一个好的关系模式。,如果一个关系模式R的所有属性都是不可分的基本数据项,则R1NF。,例: 关系模式 SLC(Sno, Sdept, Sloc, Cno, Grade) Sloc为学生住处,假设每个系的学生住在同一个地方。,SLC的码为(Sno, Cno)SLC满足INFSd

7、ept和Sloc部分函数依赖于码(Sno, Cno),SLC不是一个好的关系模式,插入异常假设Sno95102,SdeptIS,SlocN的学生还未选课,因课程号是主属性,因此该学生的信息无法插入SLC。删除异常 假定某个学生本来只选修了3号课程这一门课。现在因身体不适,他连3号课程也不选修了。因课程号是主属性,此操作将导致该学生信息的整个元组都要删除。,数据冗余度大 如果一个学生选修了10门课程,那么他的Sdept和Sloc值就要重复存储了10次。修改复杂 例如学生转系,在修改此学生元组的Sdept值的同时,还可能需要修改住处(Sloc)。如果这个学生选修了K门课,则必须无遗漏地修改K个元组

8、中全部Sdept、Sloc信息。,为什么会出现这样的情况? Sdept、 Sloc部分函数依赖于码,有什么解决方法? SLC分解为两个关系模式,以消除这些部分函数依赖 SC(Sno, Cno, Grade) SL(Sno, Sdept, Sloc),2NF,2NF的定义,定义: 若关系模式R1NF,并且每一个非主码属性都完全函数依赖于R的码,则R2NF。,在一定程度上减轻1NF关系中存在的插入异常、删除异常、数据冗余度大、修改复杂等问题。,1NF,2NF,投影分解法,例:2NF关系模式SL(Sno, Sdept, Sloc)中函数依赖: SnoSdept SdeptSloc SnoSlocSloc传递函数依赖于Sno,传递,解决方法用投影分解法,分解SL,消除传递函数依赖 SD(Sno, Sdept)DL(Sdept, Sloc)SD的码为Sno, DL的码为Sdept。,3NF,例, SL(Sno, Sdept, Sloc) 2NF SL(Sno, Sdept, Sloc) 3NF SD(Sno, Sdept) 3NF DL(Sdept, Sloc) 3NF,3NF的定义,即:消除了传递函数依赖,3NF并非最好的关系模式,消除非主属性对码的部分函数依赖,消除非主属性对码的传递函数依赖,消除主属性对码的部分和传递函数依赖,

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号