基础概念
1.1
数据依赖是一个关系内部属性与属性之间的一种约束关系
这种约束关系通过属性间值的是否相等体现出来
数据依赖中最重要的是函数依赖与多值依赖
函数依赖可以对应函数的概念,F:X
→
\rarr
→Y对应函数中y=f(x)
不好的关系模式的问题:
·数据冗余太大
·更新异常
·插入异常
·删除异常
1.2 函数依赖
函数依赖设R(U)是属性集U上的关系模式,X和Y是U的子集。
若对R(U)的任意一个可能的关系r,r中不可能存在两个元组在X上的属性值相等,而在Y上的属性集不等,则称X函数依赖于X,记作X
→
\rarr
→Y
非平凡的函数依赖 :Y
⊈
\nsubseteq
⊈X
平凡的函数依赖:Y
⊆
\sube
⊆X
完全函数依赖:R(U)中,X
→
\rarr
→Y,并且对于X中的任何一个真子集X’,都有X’
↛
\nrightarrow
↛Y
不完全函数依赖
传递函数依赖:在R(U)中,如果X → \rarr →Y,(Y ⊈ \nsubseteq ⊈X),Y ↛ \nrightarrow ↛,则称Z对X传递函数依赖
1.3 码
设K为R<U,F>中对属性或属性组合,若K完全函数依赖于U,则K为R的候选码。
主属性:包含在任何一个候选码中的属性
非主属性/非码属性
全码:整个属性组是码
外码:关系模式R中的属性或属性组X并非R的码,但X是另一个关系的码
2.范式
关系模式中满足的一定要求的关系
1NF:每一分量必须是不可分的数据项
2NF:若R ∈ \in ∈NF,且每一个非主属性完全函数依赖于码
3NF:关系模式R<U,F>中若不存在这样的码X,属性组Y及非主属性Z(Z ⊈ \nsubseteq ⊈Y),使得X → \rarr →Y,Y → \rarr →Z成立,Y ↛ \nrightarrow ↛Z,则称R<U,F> ∈ \in ∈
3NFBCNF:关系模式R<U,F> ∈ \in ∈ 1NF.若X → \rarr →Y且Y ⊈ \nsubseteq ⊈X时X必有码
4NF:关系模式R<U,F> ∈ \in ∈ 1NF,如果对于R的每个非平凡多值依赖 → → \rarr\rarr →→Y(Y ⊈ \nsubseteq ⊈X),X都有码