前言
第六章难度突增,课本看了两三次有些概念还是记不住,就简单记了点笔记方便复习。有些符号实在不方便打,就直接截了图片。
目录
1.关系模式
R(U,D,DOM,F)
U:属性 D:属性所来自的域 DOM:属性到域的映射 F:属性U上的数据依赖
本章简看成 R(U,F)
2.第一范式(1NF)
每一个分量必须是不可分的数据项
3.好的数据模式
不会发生插入异常,删除异常,更新异常,数据冗余应该尽量少
4.函数依赖
X—>Y:关系r中不可能存在两个元组在X上的属性值相等,而在Y上的属性值不等,则称X函数确定Y或Y函数依赖于X
ps:函数依赖是指R的一切关系均要满足的约束条件
非平凡的函数依赖:X—>Y,但Y∉x
平凡的函数依赖:X—>Y,但Y∈x 对任一关系模式,平凡函数依赖必然成立
决定因素:若X—>Y,则称X为这个函数依赖的决定属性组
Y对X完全函数依赖:在R(U)中,如果X—>Y,并且对于X的任一真子集X’,都有X-\->Y。记作:
部分函数依赖:X—>Y,但Y不完全函数依赖于X。记作:
传递函数依赖:
5.码
候选码:K为R<U,F>中的属性或属性组合,若U完全依赖于K,则K为R的候选码
超码:U部分函数依赖于K。 候选码是最小的超码
主码:候选码中的一个
主属性:包含在任何一个候选码中的属性
全码:整个属性是码(候选码/主码)
外码:关系模式R中的属性X并非R中的码,但X是另一个关系模式的码,则称X为R的外部码
6.范式
范式:
符合某一种级别的关系模式的集合
第二范式2NF:
R∈1NF,且每一个非主属性完全函数依赖于任何一个候选码
第三范式3NF:![在这里插入图片描述](https://img-blog.csdnimg.cn/9ac6a9ea5b504b099f474b930285645d.png)
若R属于3NF,则每一个非主属性既不传递依赖于码,也不部分依赖于码
扩充的第三范式BCNF:
即每一个决定因素都包含码
一个模式中的关系模式如果都属于BCNF,那么在函数依赖范畴内它已经实现了彻底的分离,已消除了插入和删除的异常
多值依赖:
定义有点绕,其实就是从函数依赖的一对一关系,变成了一对多
平凡的多值依赖:X—>—>Y,而Z=∅,即Z为空
性质:
- 对称性。若X—>—>Y,则X—>—>Z,其中Z=U-X-Y
- 传递性。若X—>—>Y,Y—>—>Z,则X—>—>Z-Y
- 函数依赖可以看做是多值依赖的特殊情况
- 若X—>—>Y,X—>—>Z,则X—>—>YZ
- 若X—>—>Y,X—>—>Z,则X—>—>Y∩Z
- 若X—>—>Y,X—>—>Z,则X—>—>Y-Z,X—>—>Z-Y
多值依赖和函数依赖的区别
- 多值依赖的有效性与属性集的范围有关
4NF:
关系模式R<U,F>∈1NF,如果对于R的每个非平凡多值依赖X—>—>Y(Y∉X),X都含有码值
4NF所允许的非平凡的多值依赖(Z≠∅)实际上是函数依赖