第六章总结

文章目录

  • 基础知识
    • 关系模式
    • 为什么有规范化理论
    • 1 函数依赖
    • 2多值依赖
  • 范式和规范化
    • 1NF
    • 2NF
    • 3NF
    • BCNF
    • 4NF
  • 候选码的求解
  • 总结

基础知识

关系模式

关系模式由五部分组成:R(U, D, DOM, F)

R是符号化的元组语义
U为一组属性
D为属性组U中的属性所来自的域
DOM为属性到域的映射
F为属性组U上的一组数据依赖

为什么有规范化理论

规范化的原因,低级别的范式可能有一下不便
(1)数据冗余
(2)更新异常
(3)插入异常
(4)删除异常

1 函数依赖

设R(U)是一个属性集U上的关系模式,X和Y是U的子集。

对于R(U)的任意一个可能的关系r,r 中不可能存在:
两个元组在X上的属性值相等,而在Y上的属性值不等,

称“X函数确定Y”或“Y函数依赖于X”,记作X→Y。

设K为R中的属性或属性组合。若K → U,则K称为R的一个候选码(Candidate Key)。

如果U部分函数依赖于K,即K → U,则K称为超码

若关系模式R有多个候选码,则选定其中的一个做为主码(Primary key)。

主属性非主属性
包含在任何一个候选码中的属性 ,称为主属性
不包含在任何码中的属性称为非主属性

整个属性组是码,称为全码(All-key)

2多值依赖

设R(U)是属性集U上的一个关系模式。X,Y,Z是U的子集,并且Z=U-X-Y。关系模式R(U)中多值依赖X→→Y成立,当且仅当对R(U)的任一关系r,给定的一对(x,z)值,有一组Y的值,这组值仅仅决定于x值而与z值无关。

例子:你所大学学习的所有课程只和你选的专业有关,和教授你的老师没有关系。因为一门课可能有多个老师教。即课程多值依赖专业,即 专 业 → → 课 程 {专业 } \rightarrow\rightarrow 课程

范式和规范化

一个低一级范式的关系模式,通过模式分解可以转换为若干个高一级范式的关系模式的集合,这种过程就叫规范化。

第六章总结_第1张图片

1NF

二维表每个分量必须是不可分开的数据项。

2NF

若关系模式R∈1NF,并且每一个非主属性都完全函数依赖于任何一个候选码,则R∈2NF

简记为不存在不完全函数依赖关系

3NF

设关系模式R∈1NF,若R中不存在这样的码X、属性组Y及非主属性Z (Y⊇ Z), 使得X→Y,Y→Z成立,Y ↛ X不成立

简记为不存在传递关系

BCNF

设关系模式R∈1NF,若X →Y且 Y ⊈ X Y \nsubseteq X YX时X必含有码,则R∈BCNF。
换言之,在关系模式R中,如果每一个决定属性集都包含候选码,则R∈BCNF。

4NF

关系模式R∈1NF,如果对于R的每个非平凡多值依赖X→→Y(Y ⊈ X),X都含有码,则R∈4NF。

在3NF上更近了一步

第六章总结_第2张图片

候选码的求解

闭包(记作X+ )就是由一个属性直接或间接推导出的所有属性的集合。

例如:
f={a->b,b->c,a->d,e->f};
由a可直接得到b和d,间接得到c,
则a的闭包就是{a,b,c,d}

还有几个重要的定理,重点是要会用就行了。
第六章总结_第3张图片

第六章总结_第4张图片

第六章总结_第5张图片

总结

这一章节的内容是偏理论和抽象的,但只要找到具体的例子就会相对的好理解一些,还是要多背和多刷题。
习题

你可能感兴趣的:(数据库)