CH5关系数据理论及求精-副本.ppt

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
CH5关系数据理论及求精-副本要点

* 小结-范式之间的关系 2NF 4NF 1NF 3NF 消除非主属性对码的部分函数依赖 消除非主属性对码的传递函数依赖 消除主属性对码的传递函数依赖 消除非平凡的多值依赖 BCNF * 4NF- 多值依赖的问题 关系模式TEACH(C#,T#,B#),一门课程由多个教员担任,一门课程使用相同的一套参考书。它的码是(C#,T#,B#),所以属于BCNF C# T# B# C1 T1 B1 C1 T1 B2 C1 T2 B1 C1 T2 B2 C2 T1 B3 C2 T1 B4 C2 T3 B3 C2 T3 B4 C# T# B# C1 {T1,T2} {B1,B2} C2 {T1,T3} {B3,B4} 有没有问题? * 多值依赖 不良特性 插入异常:当某门课程增加一名教员时,该门课程有多少本参考书就必须插入多少个元组;同样当某门课程需要增加一本参考书时,它有多少个教员就必须插入多少个元组 删除异常:当删除一门课程的某个教员或者某本参考书时,需要删除多个元组 更新异常:当一门课程的教员或参考书作出改变时,需要修改多个元组 数据冗余:同一门课的教员与参考书的信息被反复存储多次 C# T# B# C1 T1 B1 C1 T1 B2 C1 T2 B1 C1 T2 B2 C2 T1 B3 C2 T1 B4 C2 T3 B3 C2 T3 B4 C# T# B# C1 {T1,T2} {B1,B2} C2 {T1,T3} {B3,B4} * 多值依赖 定义 描述型:关系模式R(U),X、Y、Z ? U,并且Z = U – X – Y,多值依赖X ?? Y成立当且仅当对R(U)的任一关系r,给定的一对(x,z)值有一组Y的值,这组值仅仅决定于x值而与z值无关 如在关系模式TEACH中,对(C1 , B1)有一组T#值(T1 , T2),对(C1 , B2)也有一组T#值(T1 , T2),这组值仅取决于C#的取值,而与B#的取值无关。因此,T#多值依赖于C#,记作C#??T#,同样有C#??B# C# T# B# C1 T1 B1 C1 T1 B2 C1 T2 B1 C1 T2 B2 C2 T1 B3 C2 T1 B4 C2 T3 B3 C2 T3 B4 关系模式TEACH(C#,T#,B#),一门课程由多个教员担任,一门课程使用相同的一套参考书。它的码是(C#,T#,B#) C# T# B# C1 {T1,T2} {B1,B2} C2 {T1,T3} {B3,B4} * 多值依赖 形式化:关系模式R(U),X、Y、Z?U,Z=U–X– Y,对于R(U)的任一关系r,若存在元组t1,t2,使得t1[X] = t2[X],那么就必然存在元组t3,t4,使得: t3[X] = t4[X] = t1[X] = t2[X] t3[Y] = t1[Y], t4[Y] = t2[Y] t3[Z] = t2[Z], t4[Z] = t1[Z] 则称Y多值依赖于X,记作X ?? Y 若(C#, T#, B#)满足C#??T#,含有元组t1=(C1, T1, B1),t2=(C1, T2, B2),则也一定含有元组t3=(C1, T1, B2),t4=(C1, T2, B1)。 C# T# B# C1 T1 B1 C1 T1 B2 C1 T2 B1 C1 T2 B2 C2 T1 B3 C2 T1 B4 C2 T3 B3 C2 T3 B4 t1 t3 t4 t2 C# T# B# C1 {T1,T2} {B1,B2} C2 {T1,T3} {B3,B4} * 多值依赖 性质 多值依赖具有对称性,即 若X??Y,则X??Z,其中Z=U–X–Y 函数依赖是多值依赖的特例,即 若X?Y,则X??Y 若X??Y,U–X–Y=?,则称? X??Y为平凡的多值依赖 多值依赖是对元组值的约束,而函数依赖是对属性值的约束 每个教师只能上一门课程,并且使用一本教材 C# T# ? C1 {T1,T2} ? C2 {T1,T3} ? * 多值依赖 Vs 函数依赖 区别 函数依赖规定某些元组不能出现在关系中,也称为相等产生依赖 多值依赖要求某种形式的其它元组必须在关系中,称为元组产生依赖 * 4NF 定义 关系模式R U , F ? 1NF,若X??Y(Y?X)是非平凡的多值依赖,且X含有码,则称R?4NF 如关系模式CTB?是否是4NF C#??T#,C#??B#,码为(C#, T#, B#),所以CTB?4NF 如果一门课Ci有m个教员,n本参考书,则关系中分量为Ci的元组共有m×n个,数据冗余非常大 改造?如何改? 将CTB分解为CT(C#,T#),CB(C#,B#),在分解后的关系中分量为Ci的元组共有m + n个 C# T# B# C1 T

文档评论(0)

dajuhyy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档