关系数据理论
1.理解并给出下列术语的定义
函数依赖:
设R(U)是一个关系模式,U是R上的属性集合,X和Y是U的子集。对于R(u)的任意一个可能的关系r,如果r中不存在两个元组,它们在X上的属性值相同,而在Y上的属性值不同,则称“X函数确定Y”或“Y函数依赖于X”,记住X->Y。
- 函数依赖是最基本的一种数据依赖,也是最重要的数据依赖。
- 函数依赖是属性之间的一种联系,体现在属性值是否相等
- 我们要从属性间实际存在的语义来确定它们之间的函数依赖,即函数依赖描述反映了现实世界的一种语义。
- 函数依赖不是指关系模式R在某个时刻的关系(值)满足的约束条件,而是指R在任何时刻的一切关系均要满足的约束条件。
完全函数依赖\部分函数依赖:
- 在R(u)中,如果X->Y,并且对于X的任何一个真子集X‘,都有X’!->Y,则称Y对于X完全依赖,记作:X—F—>Y
- 若X->Y,但Y不完全函数依赖于X,则称Y对X部分函数依赖,记作:X-p->Y
传递依赖:在R(u)中,如果X->Y,Y不属于X,Y推不出X,Y->Z,Z不属于Y,则称Z对X传递函数依赖。
候选码、主码:
设K为R<U,F>中的属性或属性组合,若K->U,则K为R的候选码。若候选码多于一个,则选定其中的一个为主码。
外码:关系模式R中属性或属性组X并非R的码,但X是另一个关系模式的码,则称X是R的外部码,也称外码。
全码:整个属性组是码,称为全码。
1NF:关系模式R的每一个分量是不可再分的数据项。
2NF:关系模式R属于1NF,且每一个非主属性完全函数依赖于码
3NF:关系模式R<U,F>中不存在这样的码X、属性组Y及非主属性Z(Z不是Y的子集)使得X->Y,Y-/>X,Y->Z成立。
BCNF:关系模式R<U,F>属于1NF,X->Y且Y不是X的 子集,X必含有码。
多值依赖:设R(U)是属性集U上的一个关系模式。X,Y,Z是U的子集,并且Z=U-X-Y。关系模式R(U)中多值依赖x->->y成立,当且仅当对R(U)任一关系r,给定的一对(x,z)值,有一组y的值,这组值仅仅决定X值而与Z值无关。
4NF:关系模式R<U,F>属于1NF,如果对于R的每个非凡多值依赖X->->Y(Y不是X的子集,Z=U-X-Y不为空),X都含有码。