第四章关系数据库设计理论 4.1数据依赖 4.2范式 4.3关系模式的规范化
第四章关系数据库设计理论 4.1 数据依赖 4.2 范式 4.3 关系模式的规范化
4.1数据依赖 4.1.1关系模式中的数据依赖 -完整的关系模式的描述:R(U,D,DOM,F) ●R关系名 ●U属性组 ●D是U的取值范围,是域的集合 ●DOM是属性向域映象的集合 ●F是属性间数据的依赖关系集合 一关系模式是静态的、稳定的;关系是动态的,不同时 刻关系模式中的关系可能不同,但关系都必须满足关 系模式中数据依赖关系集合F指定的完整性约束 影响数据库模式设计的主要是U和F,所以一般关系 模式简化为:R(U,F)
4.1 数据依赖 4.1.1 关系模式中的数据依赖 – 完整的关系模式的描述:R(U,D,DOM,F) ⚫R关系名 ⚫U属性组 ⚫D是U的取值范围,是域的集合 ⚫DOM是属性向域映象的集合 ⚫F是属性间数据的依赖关系集合 – 关系模式是静态的、稳定的;关系是动态的,不同时 刻关系模式中的关系可能不同,但关系都必须满足关 系模式中数据依赖关系集合F指定的完整性约束 – 影响数据库模式设计的主要是U和F,所以一般关系 模式简化为:R(U, F)
4.1.2数据依赖对关系模式的影响 ●数据依赖有: 一函数依赖、多值依赖和连接依赖 口一个关系模式示例 U={Sno,Sdept,Mname,Cname,Grade} F={Sno->Sdept,Sdept->Mname,(Sno,Cname)->Grade) ●该关系模式存在如下问题 数据冗余太大:系主任名字重复出现,和所有学生 的所有课程成绩次数一样 更新异常:更换系主任必须修改每一个学生信息 插入异常:刚成立的系如果还没有招生就无法存储 系主任信息 删除异常:某个系的学生全部毕业删除时会丢失系 主任信息
4.1.2 数据依赖对关系模式的影响 ⚫ 数据依赖有: – 函数依赖、多值依赖和连接依赖 ❑一个关系模式示例 U={Sno,Sdept,Mname,Cname,Grade} F={Sno->Sdept, Sdept->Mname, (Sno,Cname)->Grade} ⚫ 该关系模式存在如下问题 : –数据冗余太大:系主任名字重复出现,和所有学生 的所有课程成绩次数一样 –更新异常:更换系主任必须修改每一个学生信息 –插入异常:刚成立的系如果还没有招生就无法存储 系主任信息 –删除异常:某个系的学生全部毕业删除时会丢失系 主任信息
4.1.3相关概念 >函数依赖 R(U)是一个关系模式,U是R的属性集合,X和Y 是U的子集,对于R(U)的任意一个可能的关系r, 如果r中不存在两个元组w,V,使得wX]=vX]而 w[Y]◇v[Y],称X函数决定Y,或Y函数依赖于X, 记X->Y >平凡的和非平凡的函数依赖 关系模式R(U),X和Y是U的子集,如果X->Y, 且YX,则称X->Y是非平凡的函数依赖,否则称 平凡的函数依赖,我们讨论的都是非平凡的函数依 赖
4.1.3 相关概念 ➢ 函数依赖 R(U)是一个关系模式,U是R的属性集合,X和Y 是U的子集,对于R(U)的任意一个可能的关系r, 如果r中不存在两个元组w,v,使得w[X]=v[X]而 w[Y]<>v[Y],称X函数决定Y,或Y函数依赖于X, 记X->Y ➢ 平凡的和非平凡的函数依赖 关系模式R(U), X和Y是U的子集,如果X->Y, 且YX,则称X->Y是非平凡的函数依赖,否则称 平凡的函数依赖,我们讨论的都是非平凡的函数依 赖
·完全函数依赖和部分函数依赖 关系模式R(U),如果XY,且对于任意的X的真子 集X都有X十Y,则称Y完全函数依赖于X,记XY。 反之则Y不完全依赖于X,称Y部分依赖于X,记XPY ●传递函数依赖 关系模式R(U),如果X一>Y,Y一>Z,且Y十+X,则 称Z传递函数依赖于X,记X,Z ●码的重新定义 关系模式R(U,F),K为属性组合,若KEU,则K是 个候选码
⚫ 完全函数依赖和部分函数依赖 关系模式R(U),如果X Y,且对于任意的X的真子 集X’都有X’ \ Y,则称Y完全函数依赖于X,记X f Y。 反之则Y不完全依赖于X,称Y部分依赖于X,记X P Y ⚫ 传递函数依赖 关系模式R(U),如果X->Y,Y->Z,且Y \ X,则 称Z传递函数依赖于X,记X t Z ⚫ 码的重新定义 关系模式R(U,F),K为属性组合,若K f U,则K是一 个候选码