27174administrator内容摘要:

若 R∈ BCNF  所有非主属性对每一个码都是完全函数依赖  所有的主属性对每一个不包含它的码,也是完全函数依赖  没有任何属性完全函数依赖于非码的任何一组属性 R ∈ BCNF R ∈ 3NF 充分 不必要 An Introduction to Database System BCNF(续) [例 5] 关系模式 C( Cno, Cname, Po)  C∈ 3NF  C∈ BCNF [例 6] 关系模式 S( Sno, Sname, Sdept, Sage)  假定 S有两个码 Sno, Sname  S∈ 3NF。  S ∈ BCNF An Introduction to Database System BCNF(续) [例 7]关系模式 SJP( S, J, P) 函数依赖:( S, J) →P; (J, P) →S ( S, J)与( J, P)都可以作为候选码 ,属性相交 SJP∈ 3NF, SJP∈ BCNF An Introduction to Database System BCNF(续) [例 8]在关系模式 STJ( S, T, J)中, S表示学生, T表示教师, J表示课程。  函数依赖: (S, J)→T, (S, T)→J, T→J  (S, J)和 (S, T)都是候选码 An Introduction to Database System BCNF(续) J S J T S T STJ中的函数依赖 An Introduction to Database System BCNF(续) STJ∈ 3NF  没有任何非主属性对码传递依赖或部分依赖 STJ∈ BCNF  T是决定因素, T不包含码 An Introduction to Database System BCNF(续) 解决方法:将 STJ分解为二个关系模式: ST(S, T) ∈ BCNF, TJ(T, J)∈ BCNF 没有 任何属性 对码的部分函数依赖和传递函数依赖 S J ST T J TJ An Introduction to Database System 3NF与 BCNF的关系 R ∈ BCNF R ∈ 3NF 如果 R∈ 3NF,且 R只有一个候选码 R ∈ BCNF R ∈ 3NF 充分 不必要 充分 必要 An Introduction to Database System 规范化 函数依赖 码 范式 2NF 3NF BCNF 多值依赖 4NF 规范化小结 An Introduction to Database System 多值依赖 [例 9] 学校中某一门课程由多个教师讲授,他们使用相同的一套参考书。 每个教员可以讲授多门课程,每种参考书可以供多门课程使用。 An Introduction to Database System … … … 课 程 C 教 员 T 参 考 书 B 物理 数学 计算数学 李 勇 王 军 李 勇 张 平 张 平 周 峰 普通物理学 光学原理 物理习题集 数学分析 微分方程 高等代数 数学分析 ... … 多值依赖(续)  非规范化关系 An Introduction to Database System 普通物理学 光学原理 物理习题集 普通物理学 光学原理 物理习题集 数学分析 微分方程 高等代数 数学分析 微分方程 高等代数 … 李 勇 李 勇 李 勇 王 军 王 军 王 军 李 勇 李 勇 李 勇 张 平 张 平 张 平 … 物 理 物 理 物 理 物 理 物 理 物 理 数 学 数 学 数 学 数 学 数 学 数 学 … 参考书 B 教员 T 课程 C 多值依赖(续)  用二维表表示 Teaching An Introduction to Database System 多值依赖(续)  Teaching∈ BCNF  Teaching具有唯一候选码 (C, T, B), 即全码 An Introduction to Database System 多值依赖(续) Teaching模式中存在的问题 (1)数据冗余度大 (2)插入操作复杂 (3) 删除操作复杂 (4) 修改操作复杂 存在 多值依赖 An Introduction to Database System 多值依赖(续)  定义 设 R(U)是一个属性集 U上的一个关系模式, X、 Y和 Z是 U的子集,并且 Z= U- X- Y。 关系模式 R(U)中 多值依赖 X→→Y成立,当且仅当对 R(U)的 任一关系 r,给定的一对( x, z)值,有一组Y的值,这组值仅仅决定于 x值而与 z值无关  例 Teaching( C, T, B) An Introduction to Database System 多值依赖(续) 多值依赖的另一个等价的形式化的定义: 在 R( U)的任一关系 r中,如果存在元组 t, s 使得 t[X]=s[X],那么就必然存在元组 w, v r,( w, v可以与 s, t相同),使得 w[X]=v[X]=t[X],而 w[Y]=t[Y], w[Z]=s[Z], v[Y]=s[Y],v[Z]=t[Z](即交换 s, t元组的 Y值所得的两个新元组必在 r中),则 Y多值依赖于 X,记为 X→→Y。 这里, X, Y是 U的子集,Z=UXY。 An Introduction to Database System 多值依赖(续) 平凡多值依赖和非平凡的多值依赖  若 X→→Y,而 Z= φ,则称 X→→Y为 平凡的多值依赖  否则称 X→→Y为 非平凡的多值依赖 An Introduction to Database System 多值依赖(续) [例 10]关系模式 WSC( W, S, C)  W表示仓库, S表示保管员, C表示商品  假设每个仓库有若干个保管员,有若干种商品  每个保管员保管所在的仓库的所有商品  每种商品被所有保管员保管 An Introduction to Database System 多值依赖(续) W S C W1 S1 C1 W1 S1 C2 W1 S1 C3 W1 S2 C1 W1 S2 C2 W1 S2 C3 W2 S3 C4 W2 S3 C5 W2 S4 C4 W2 S4 C5 An Introduction to Database System 多值依赖(续) W→→S 且 W→→C 用下图表示这种对应 An Introduction to Database System 多值依赖的性质 ( 1)多值依赖具有对称性 若 X→→Y,则 X→→Z,其中 Z= U- X- Y ( 2)多值依赖具有传递性 若 X→→Y, Y→→Z, 则 X→→Z –Y ( 3)函数依赖是多值依赖的特殊情况。 若 X→Y,则 X→→Y。 ( 4)若 X→→Y, X→→Z,则 X→→Y Z。 ( 5)若 X→→Y, X→→Z,则 X→→Y∩Z。 ( 6)若 X→→Y, X→→Z,则 X→→YZ, X→→Z Y。 An Introduction to Database System 多值依赖与函数依赖的区别 (1) 多值依赖的有效性与属性集的范围有关 (2)  若函数依赖 X→Y在 R( U)上成立,则对于任何Y39。  Y均有 X→Y39。 成立  多值依赖 X→→Y若在 R(U)上成立,不能断言对于任何 Y39。  Y有 X→→Y39。 成立 An Introduction to Database System 规范化 函数依赖 码 范式 2NF 3NF BCNF 多值依赖 4NF 规范化小结 An Introduction to Database System 4NF 定义 关系模式 RU, F∈ 1NF,如果对于 R的每个非平凡多值依赖 X→→Y( Y  X), X都含有码,则R∈ 4NF。 如果 R ∈ 4NF, 则 R ∈ BCNF  不允许 有非平凡且非函数依赖的 多值依赖  允许 的非平凡多值依赖是 函数依赖 An Introduction to Database System 4NF(续) 例 : Teaching(C,T,B) ∈ 4NF 存在非平凡的多值依赖 C→→T,且 C不是码  用投影分解法把 Teaching分解为如下两个关系模式: CT(C, T) ∈ 4NF CB(C, B) ∈ 4NF C→→T, C→→B是平凡多值依赖 An Introduction to Database System 规范化 函数依赖 码 范式。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。