数据库关系规范化函数依赖

函数依赖:设R(U)是属性集U上的关系模式,X和Y是U的子集。若对于R(U)的任意一个可能的关系r,r中不可能存在两个元组在X上得属性值相等,而在Y上的属性值不等,则称“X函数确定Y”或“Y函数依赖于X”,记作X->Y
物理解释:Y=f(X),即若输入X的同一个值,Y的输出值是唯一确定的,即X与Y之间是一对一,或多对一关系,则称X->Y
数据库关系规范化函数依赖

平凡函数依赖与非平凡函数依赖

给定关系模式R(U),X和Y是U的子集,若X->Y,且Y不是X子集,则称X->Y是非平凡的函数依赖(Sno,Cno)->Grade
若X->Y,且Y是X的子集,则称X->Y是平凡的函数依赖(Sno,Sname)->Sname,(Sno,Cno)->Sno,(Sno,Cno)->Cno

完全函数依赖与部分函数依赖

给定关系模式R(U,F),X->Y属于F,若X’是X的子集,且对任意X’,均有X’不能推出Y,则称Y对X完全函数依赖,记为X->Y ,如Sno->Sdept
反之,若存在X’是X的子集,且X’能推导出Y,则称Y不完全函数依赖于X,或Y对X部分函数依赖,记作X(P->)Y,如(Sno,Sname)->Sdept

传递函数依赖

给定关系模式R(U,F),若X->Y,且Y不是X的子集,Y不能推导出X,并且Y->Z,Z不是Y的子集,则称Z对X传递函数依赖,记作X(传递->)Z(满足非平凡函数依赖和Y不能推导出X)
若X->Y且Y->X,则有X<–>Y,则称Z直接依赖于X
关系模式STD(Snoopy,Sdept,Mname)中,有:
Sno->Sdept,Sdept->Mname,则有Sno(传递->)Mname

候选码和主码

关系模式中决定所有属性的最小组合成为候选码
若候选码有多个,则选定其中一个作为主码
若整个属性组U是码,则主码也成为全码

主属性与非主属性

包含在任何一个候选码中的属性,成为主属性
不包含在任何码中的属性成为非主属性或非码属性
数据库关系规范化函数依赖
PWA

外码

一个关系模式中的主码在另一个关系模式中不是主码,则骑在另一个关系模式中成为外码
主码和外码一起建立了关系间的联系表示

上一篇:FastDFS :java.lang.Exception: getStoreStorage fail, errno code: 28


下一篇:Android导入自定义的jar包时出现 E/AndroidRuntime(486): java.lang.NoClassDefFoundError错误