关系模式的规范化理论63页PPT

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
关系模式的规范化理论
1、纪律是管理关系的形式。——阿法 纳西耶 夫 2、改革如果不讲纪律,就难以成功。
3、道德行为训练,不是通过语言影响 ,而是 让儿童 练习良 好道德 行为, 克服懒 惰、轻 率、不 守纪律 、颓废 等不良 行为。 4、学校没有纪律便如磨房里没有水。 ——夸 美纽斯
5、教导儿童服从真理、服从集体,养 成儿童 自觉的 纪律性 ,这是 儿童道 德教育 最重要 的部分 。—— 陈鹤琴
则称X函数决定Y,或Y函数依赖于X。记为X→Y。
在上述的关系模式S(S#,SN,SD,SA)中,存在以下函 数依赖:
S #→SD S#→SN S#→SA (S#,C#)→G
2)几种类型的函数依赖
定义6.2(非平凡函数依赖、平凡函数依赖):一个函数依赖 X→Y如果满足Y⊈X,则称此函数依赖为非平凡函数依赖,否则 称之为平凡函数依赖。
几种类型的函数依赖
在属性Y与X之间,除了完全函数依赖和部分函数依赖关系等 直接函数依赖,还存在间接函数依赖关系。如果在关系S中增 加系的电话号码DT,从而有S #→SD,SD→DT,于是S#→DT。 在这个函数依赖中,DT并不直接依赖于S#,是通过中间属性 SD间接依赖于S#。这就是传递函数依赖。
所以,(S#,SN)和(S#,SD)都不是关键字,而是超关键字。
6.3 函数依赖的公理系统
6.3.1 函数依赖的逻辑蕴涵 6.3.2 Armstrong公理系统 6.3.3 函数依赖集的等价与覆盖
S#
SN
SD
SA
C#
CN
PC#
G
0001 张华
计算机
17
C101
离散数学
C110
5
0001 张华
计算机
17
C102
数据结构
C101
5
0001 张华
计算机
17
C105 数据库原理
C102
3
0002 李明 信息管理 19
C103
操作系统
C102
3
0002 李明 信息管理 19
C105 数据库原理
C102
关系S
S# SN
SD
SA
0001 张华 计算机 17
0002 李明 信息管理 19
0003 刘强 计算机 18
关系S_C
S#
C#
G
0001 C101
5
C# C101 C102 C103 C105
关系C
CN 离散数学 数据结构 操作系统 数据库原理
PC# C110 C101 C102 C102
0001 C102
例如X→Φ, X→X , XZ→X等都是平凡函数依赖。 定义6.3(完全函数依赖、部分函数依赖):设X、Y是关系R的 不同属性集,若X→Y (Y函数依赖于X),且不存在X’⊂X ,使 X’→Y,则称Y完全函数依赖于X,记为 X fY; 否则则称Y部分函数依赖于X,记为 X pY。
例如,在上例关系S中, S# fSD是完全函数依赖; (S,#SN ) pSD、(S#,SA ) pSD是部分函数依赖。
定义6.4(传递函数依赖):设X、Y、Z是关系模式R (U)中的 不同的属性集,如果X→Y,Y→X,Y→Z,则称Z传递依赖于X, 否则,称为非传递函数依赖。
3)关系的关健字和超关键字
定义6.5(关键字):在关系模式R(U)中,若K U,且满足K f,U 则称K为R的关键字。
一个包含了关键字的属性集合也能够函数决定(但不是完全函 数决定,而是部分决定)属性全集,我们把这种包含了关键字的 属性集合称为超关键字(Super Key)。
3
0003 刘强
计算机
18
C107
汇编语言
C110
4
(1)冗余度大
(2)操作异常
由于数据的冗余,在对数据操作时会引起各种异常:
➢插入异常
➢删除异常
➢修改异常
关系模式的分解
我们采用分解的方法,将上述S_C_G分解成以下三个模式: S(S#,SN,SD,SA) C(C#,CN,PC#) S_C(S#,C#,G)
第6章 关系模式的规范化理论
本章主要内容
关系数据库的规范化设计是指面对一个现实问题, 如何选择一个比较好的关系模式集合。规范化设计理 论对关系数据库结构的设计起着重要的作用。
由于关系模型有严格的数学理论基础,因此人们就以 关系模型为作为讨论对象,形成了数据库逻辑设计的一 个有力工具――关系数据库的规范化理论。
关系模式的规范化理论
6.1 关系模式设计中的问题 6.2 函数依赖 6.3 函数依赖的公理系统 6.4 关系模式的分解及其问题 6.5 关系模式的规范化 6.6 多值函数依赖与4NF 本章小结
6.1 关系模式设计中的问题
假设需要设计一个学生学习情况数据库StuDB。
下面我们以模式S_C_G(S#,SN,SD,SA,C#,CNBiblioteka BaiduG,PC #)为例来说明该模式存在的问题。下表是其一个实例。
5
0001 C105
3
0002 C103
3
0002 C105
3
0003 C107
4
C107 汇编语言 C110
6.2 函数依赖
1)函数依赖(Functional Dependency,简称FD)
定 义 6.1 ( 函 数 依 赖 ) : 设 有 关 系 模 式 R(U) , 其 中 U { A1 , A2,…,An}是关系的属性全集,X、Y是U的属性子集,设t和u是 关系R上的任意两个元组 ,如果t和u在X的投影t[X]=u[X]推出 t[Y]=u[Y],即:t[X]=u[X] => t[Y]=u[Y]
本章主要内容
(1)关系模式的冗余和异常问题。 (2)FD的定义、逻辑蕴涵、闭包、推理规则、与关
键码的联系;平凡的FD;属性集的闭包;推理规则 的正确性和完备性;FD集的等价;最小依赖集。 (3)无损分解的定义、性质、测试;保持依赖集的 分解。 (4)关系模式的范式:1NF,2NF,3NF,BCNF。分 解成2NF、3NF模式集的算法。 (5)MVD、4NF、5NF的定义。
例如,在上例的S(S#,SN,SD,SA)、C(C#,CN,PC#) 、S_C(S#,C#,G)三个关系模式中,存在以下关键字:
S# f (S#,S,N S,D S)AC# f (C#,C,N P# C ) (S#,C#) fG
所以,S#、C#和(S#,C#)分别是关系模式S、C和S_C的关键 字 。(S #,S)N p (S #,S,N S,S D)A(S#,S)D p (S#,S,N S,S D)A
相关文档
最新文档