文档介绍:数据库系统概论 第六章 关系数据理论
第1页,共132页,编辑于2022年,星期六
An Introduction to Database System
第六章 关系数据理论
问题的提出
规范化
数据stem
数据依赖对关系模式的影响(续)
结论:
Student关系模式不是一个好的模式。
“好”的模式:
不会发生插入异常、删除异常、更新异常,
数据冗余应尽可能少
原因:由存在于模式中的某些数据依赖引起的
解决方法:通过分解关系模式来消除其中不合适
的数据依赖
第14页,共132页,编辑于2022年,星期六
An Introduction to Database System
分解关系模式
把这个单一模式分成3个关系模式:
S(Sno,Sdept,Sno → Sdept);
SC(Sno,Cno,Grade,(Sno,Cno) → Grade);
DEPT(Sdept,Mname,Sdept→ Mname)
第15页,共132页,编辑于2022年,星期六
An Introduction to Database System
第六章 关系数据理论
问题的提出
规范化
数据依赖的公理系统
* 模式的分解
小结
第16页,共132页,编辑于2022年,星期六
An Introduction to Database System
规范化
规范化理论正是用来改造关系模式,通过分解关系模式来消除其中不合适的数据依赖,以解决插入异常、删除异常、更新异常和数据冗余问题。
第17页,共132页,编辑于2022年,星期六
An Introduction to Database System
规范化
函数依赖
码
范式
2NF
3NF
BCNF
多值依赖
4NF
规范化小结
第18页,共132页,编辑于2022年,星期六
An Introduction to Database System
函数依赖
函数依赖
平凡函数依赖与非平凡函数依赖
完全函数依赖与部分函数依赖
传递函数依赖
第19页,共132页,编辑于2022年,星期六
An Introduction to Database System
一、函数依赖
设R(U)是一个属性集U上的关系模式,X和Y是U的子集。
若对于R(U)的任意一个可能的关系r,r中不可能存在两个元组在X上的属性值相等, 而在Y上的属性值不等, 则称 “X函数确定Y” 或 “Y函数依赖于X”,记作X→Y。
第20页,共132页,编辑于2022年,星期六
An Introduction to Database System
说明
1. 所有关系实例均要满足
2. 语义范畴的概念
3. 数据库设计者可以对现实世界作强制的规定
第21页,共132页,编辑于2022年,星期六
An Introduction to Database System
二、平凡函数依赖与非平凡函数依赖
在关系模式R(U)中,对于U的子集X和Y,
如果X→Y,但Y X,则称X→Y是非平凡的函数依赖
若X→Y,但Y X, 则称X→Y是平凡的函数依赖
例:在关系SC(Sno, Cno, Grade)中,
非平凡函数依赖: (Sno, Cno) → Grade
平凡函数依赖: (Sno, Cno) → Sno
(Sno, Cno) → Cno
第22页,共132页,编辑于2022年,星期六
An Introduction to Database System
平凡函数依赖与非平凡函数依赖(续)
若X→Y,则X称为这个函数依赖的决定属性组,也称为决定因素(Determinant)。
若X→Y,Y→X,则记作X←→Y。
若Y不函数依赖于X,则记作X→Y。
第23页,共132页,编辑于2022年,星期六
An Introduction to Database System
三、完全函数依赖与部分函数依赖
在R(U)中,如果X→Y,并且对于X的任何一个真子集X’,都有X’ Y, 则称Y对X完全函数依赖,记作
X F Y。
若X→Y,但Y不完全函数依赖于X,则称Y对X部分