关系数据库设计理论.ppt
4.2数据依赖*多值依赖(MultiValuedDependency,缩写为MVD)设R(U)是属性集U上的关系模式,X、Y、Z是U的子集,且Z=U?X?Y,多值依赖X??Y成立当且仅当对R(U)的任一关系r,任给的一对(x,z)值有一组Y的值,这组值仅仅取决于x值而与z值无关。称X多值决定Y或Y多值依赖于X。4.2数据依赖*课程C教员T参考书物理汪洋普通物理学物理汪洋光学原理物理汪洋物理习题集物理大海普通物理学物理大海光学原理物理大海物理习题集数学大海数学分析数学大海微分方程数学大海高等代数数学白云数学分析数学白云微分方程数学白云高等代数计算白云数学分析………………XYZ任给的一对(x,z)值有一组Y的值,这组值仅仅取决于x值,而与z值无关。称X多值决定Y或Y多值依赖于X。*多值依赖X??Y成立当且仅当对R(U)的任一关系r,若存在元组s、t使得s[X]=t[X],则必存在元组w、v?r(w、v可以与s、t相同),使得w[X]=v[X]=t[X],而w[Y]=t[Y],v[Y]=s[Y],w[Z]=s[Z],v[Z]=t[Z]。多值依赖的另一等价定义对于r中在X上值相等的两个元组s、t,交换它们的Y值后所得的新元组w、v仍在r中XYZs[X]v[X]w[X]t[X]tswvw[Y]s[Y]t[Y]v[Y]t[Z]v[Z]s[Z]w[Z]4.2数据依赖*平凡的多值依赖:若X??Y,而Z=?,即Z为空,则称X??Y为平凡的多值依赖。若Z非空,则称X??Y为非平凡的多值依赖多值依赖的性质:4.2数据依赖*对称性:若X??Y,Z=U?X?Y,则X??Z。函数依赖是多值依赖的特例:若X?Y,则X??Y。传递性:若X??Y,Y??Z,则X??Y?Z。多值依赖的性质:4.2数据依赖*若X??Y,X??Z,则X??Y∩Z。若X??Y,X??Z,则X??Y?Z,X??Z?Y。01024.2数据依赖*多值依赖与函数依赖的区别函数依赖X?Y的有效性仅取决于X、Y,与X、Y之外的属性无关:4.2数据依赖*多值依赖X??Y的有效性与X、Y之外的属性范围有关:若X??Y在U上成立,则在W(XY?W?U)上也成立,但反之不然。可缩小范围但不一定能扩大范围X是否多值决定Y与这一部分属性密切相关XYZR(U):WXYR(W):WX??Y在U上成立X??Y在W上也成立反之不成立4.2数据依赖*对函数依赖,若X?Y,则对Y的任意子集Y’,都有X?Y’。对多值依赖,没有上述性质,即不能保证X??Y’成立。原因:在关系模式R(U)上,函数依赖X?Y的有效性仅仅取决于X、Y两个属性集合;而在多值依赖中X??Y在U上是否成立,不仅要检查X、Y上的属性值,而且要检查Z=U-X-Y上的值。4.2数据依赖*四、键从函数依赖的角度给关键字一个形式化的定义。1.候选关键字和主关键字:设K是RU,F中的属性或属性组合,若候选关键字多于一个,则选定其中的一个作为主关键字(主键、主码)。f若K?U,则称K为U的候选关键字(候选码);4.2数据依赖*外键(外部码)若RU,F中的属性或属性组合X不是R的关键字,但X是另一个关系的关键字,则称X是R的外键。主键与外键提供了一个表示关系间联系的手段。例1:S(Sno,Sname,Sage)Sno为主码SC(Sno,Cno,Grade)Sno为外码4.2数据依赖*全键(All-key,全码)若RU,F的整个属性组是关键字,则称U是全键。01024.2数据依赖*231例2:R(P,W,A)其中各属性含义分别为:演奏者,作品和听众。其语义为:一个演奏者可演奏多个作品,某一作品可被多