文档介绍:2017 年2月 27 日第六章关系数据理论 1第六章关系数据理论问题:给出一组数据,如何构造一个适合于它们的数据模型? 数据依赖(理论核心) ★ 规范化★ 关系框架的分解★ 2017 年2月 27 日第六章关系数据理论 2 数据依赖?关系模型的形式化定义(规范化理论的背景) ?数据依赖?函数依赖( FD ) 2017 年2月 27 日第六章关系数据理论 3关系模型的形式化定义 1、关系模型的五元组定义: R < U,D,DOM,F > R —关系名, U —属性组, D —域, DOM —映射(属性与域之间的联系), F —数据依赖(属性与属性之间的联系) 2、关系模型的三元组定义: R < U,F > 当且仅当 U 上的一个关系 r 满足 F 时, r 称为关系模式 R<U,F> 的一个关系。 2017 年2月 27 日第六章关系数据理论 4数据依赖 1、定义数据依赖是通过一个关系中属性间值的相等与否体现出来的数据间的相互关系,它是现实世界属性间相互联系的抽象。 2、种类函数依赖数据依赖多值依赖连接依赖 2017 年2月 27 日第六章关系数据理论 5函数依赖的定义设 R(U) 是属性集 U上的关系模式。X,Y是U 的子集。对于 R(U) 的任意一个可能的关系 r,如果 r中不存在两个元组, 它们在 X 上的属性值相等,而在 Y 上的属性值不等,则称“X函数确定 Y”或“Y函数依赖于 X”,记作 X?Y。 X称为这个函数依赖的决定属性集。学号姓名年龄性别籍贯 98601 王晓燕 20女北京 98602 李波 23男上海 98603 陈志坚 21男长沙 98604 张兵 20男上海学号?姓名学号?年龄学号?性别学号?籍贯具体关系的函数依赖关系框架的函数依赖 2017 年2月 27 日第六章关系数据理论 6 ?完全依赖在 R(U) 中,如果 X?Y, 并且对于 X 的任何一个真子集 X’都有 X’?Y,则称 Y对X完全依赖,记作 X ?Y。?部分依赖若X?Y但Y 不完全依赖于 X ,则称 Y对X 部分函数依赖, 记作 X ? Y。?传递依赖在 R(U) 中,如果 X?Y,Y?Z ,且 Y?X,Z?Y,Y?X, 则称 Z对X传递依赖。记作 X ? Z。 f p函数依赖的种类传递 SC ( SNO , CNO , SD , Grade ) 2017 年2月 27 日第六章关系数据理论 7课堂练习已知关系模式 SLC ( S# , SD , SL , C# ,G), 学号系住址课程号成绩规定每个系的学生只住一个地方, 写出关系模式中的所有函数依赖。 S# ? SD , SD ? SL , S# ? SL , (S#,C#) ?G, (S#,C#) ? SD , (S#,C#) ? SL f pp 传递 2017 年2月 27 日第六章关系数据理论 8 –公理 F1 (自反性):若 X?Y,则X? Y 或X?X。 F2 (增广性):若 X?Y,则XZ?Y Z 或XZ?Y。 F3 (传递性):若 X?Y,Y?Z,则X?Z。–推理规则 F4 (伪增性):若 X?Y,W?Z,则XW?YZ。 F5 (伪传性):若 X?Y, YW ?Z,则 XW ?Z。 F6 (合成性):若 X?Y,X?Z,则X? YZ 。 F7 (分解性):若 X? YZ ,则X?Y,X?Z。 FD 公理及推理规则 2017 年2月 27 日第六章关系数据理论 9 课堂练习 1 、已知关系框架 R(A,B,C,D,E,P) 及其上的函数依赖集合 F={ A →B,C→P,E→A, CE → D } ,则 R的候选码是( )。① AC ② BC ③ CE ④ CD 2、给定关系框架 R(A,B,C, D ,E) 及其上的函数依赖集合 F={ CD →A,B→C,D→ E } ,则 R的候选码是( )。① CD ② BC ③ BD ④ AE 3、设关系框架 R上的函数依赖集合 F={ B →D, CA → E } ,则利用 FD 公理和规则可推出( )。① CB → B ② EA → D ③ DA → B ④ AB → AD 4、已知关系模式 r(a,b,c,d,e)及其上的函数相关性集合 f ={a→d,b→c,e→a },该关系模式的候选关键字是( )。 B. be D. de 2017 年2月 27 日第六章关系数据理论 10 规范