数据库系统概论课件_第1页
数据库系统概论课件_第2页
数据库系统概论课件_第3页
数据库系统概论课件_第4页
数据库系统概论课件_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数据库系统概论关系数据理论1问题的提出(1)关系模式: R(U ,D, dom, F) ,其中: U :一组属性D: 属性组中的属性所来自的域Dom:属性到域的映射 F:属性组上的一组数据依赖通过一个关系中属性间值的相等与否体现出来的数据间的相互关系。(函数依赖、多值依赖等)2问题的提出(2)函数依赖(functional dependency简称FD):指一个或一组属性的值可以决定其他属性的值。如学号决定学生的姓名。设X,Y是关系的两个不同的属性组,如果Y函数依赖于X或X函数决定Y ,则其依赖关系可表示为 。函数依赖存在与否,完全决定于数据的语义。3引例(1)设有一关系R,具有下列属性:学号

2、(S#)、课程号(C#)、成绩(G)、TN(任课教师姓名)、教师所在系(D)。数据具有如下语义:一个学生一个学号,一门课程一个课程号一位学生所修的每门课程都有一个成绩每门课程只有一位任课教师,一教师可教多门课教师中没有重名,每位教师只属于一个系4引例(2)具有的函数依赖: F=(S#, C#) G, C# TN, TN D可用图表示如下:S#C#GTND5引例(3)数据冗余太大。修改异常。如修改一门课的任课教师由于主属性不能为空,会引起插入异常。如某系一位教师不教课,其数据便不能插入删除异常。如所有的学生都退选某门课,必须将有关这门课的其他数据(任课教师及其所在系)删除。6引例(4)缺点的产生

3、主要来自关系的结构。该关系中包含三方面数据:成绩,开课教师和所属系。解决途径是将关系进行分解关系规范化。 SCG(S#, C#, G) CTN(C#, TN) TND(TN, D)关系规范化主要是对关系进行必要的分解,如何分解,分解后是否有损于原来的信息?7规范化(1)规范化理论在1971年由E.F.Kodd提出,主要研究如何根据一个关系所具有的数据依赖情况来判定其是否具有某些不合适的性质。对于任何一个关系,最低要求是每一个属性是不可再分的数据项,满足这个条件的关系模式即为第一范式。按属性间依赖情况,区分关系规范化程度为1NF, 2NF, 3NF, BCNF, 4NF, 5NF。8函数依赖的定

4、义设R(U)是属性集U 上的关系模式。X,Y是U 的子集。若对于R(U) 的任意一个可能的关系r, r中不可能存在两个元组在X上的属性值相等,而在Y上的属性值不等,则称X函数决定Y或Y函数依赖 X,记作: XY。9记号和术语XY, 但Y X, 则称XY为非平凡函数依赖XY, 但Y X, 则称XY为平凡函数依赖若XY,则X叫做决定因素若XY,YX,则记作XY 若Y不函数依赖于X,则记作XY10完全函数依赖在R(U)中,如果XY, 并且对于X的任何一个真子集X,都有X Y, 则称Y对X完全函数依赖,记作:若XY,但Y不完全函数依赖X,则称Y对X部分函数依赖,记作:例:SC(S#, C#, G)中,

5、 (S#, C#)G, S#G, C#G, 11传递函数依赖在R(U)中,如果XY(Y X), YX, YZ,则称Z对X传递函数依赖。例:某银行定期储蓄数据库,R(帐号, 姓名, 储蓄额, 收储员, 储蓄所名) 帐号姓名, 储蓄额, 收储员, 储蓄所名; 收储员 储蓄所名 储蓄所名传递函数依赖帐号。12码设K为R(U, F)中的属性或属性组合, 若 则K为R的候选码。若候选码多于一个,则选定其中一个为主码。包含在任何一个候选码中的属性叫主属性。不包含在任何码中的属性称为非主属性。整个属性是码,称为全码。关系模式R中属性或属性组X并非R的码,但X是另一个关系模式的码,则称X是R的外码。13范式范

6、式:符合某一种级别的关系模式的集合,即规范化的关系模式。对于各种范式之间的联系有:规范化:一个低一级范式的关系模式,通过模式分解可以转换为若干个高一级范式的关系模式的集合,这种过程叫规范化。142NF(1)若R1NF,且每一个非主属性完全函数依赖于码,则R2NF。例:SLC(S#, SD, SL, C#, G),每个系的学生住在同一个地方,码为(S#, C#),函数依赖F: (S#, C#) G, S# SD, S# SL, SD SL SLC2NFGSDSLS#C#152NF(2)问题:插入异常:若插入未选课学生情况(S7, PHY, N),由于码的一部分为空,所以不能插入。删除异常:若某学

7、生只选了一门课,现在这门课也不选了,将删除改学生所有的情况修改复杂:某学生转系了,则需修改多处,使修改变得复杂。数据冗余:某学生选了多门课,则系别须重复多次,造成大量数据冗余。162NF(3)解决方法:用投影分解将上述关系分解为: SC(S#, C#, G), SL(S#, SD, SL)GS#C#SDSLS#173NF(1)对于SL(S#, SD, SL),处于第二范式,但仍存在问题:插入:若新建一个系,尚无学生,则无法插入删除:若该系所有学生都毕业了,删除学生信息的同时将系的信息也删除了修改:修改SL时,有多少学生就要修改多少次出现上述问题,因为未消除传递函数依赖。183NF(2)关系模式

8、R(U, F)中若不存在这样的码X,属性组Y及非主属性Z(Z不包含于Y),使得XY(YX)YZ成立,则称R3NF。若R3NF,则每一个非主属性既不部分依赖于码,也不传递依赖于码。上述关系的解决方法:将SL分解 S_D(S#, SD) , DL(SD, SL)SDSLS#19BCNF(1)由Boyce和Codd提出3NF关系模式的遗留问题是其定义中未涉及主属性的存储异常问题。例:关系模式R(C(City), S(Street), Z(Zip),其函数依赖: (C, S) Z, Z C,显然(C,S)为码,CSZ20BCNF(2)关系模式R(U, F)1NF,若XY,且Y不包含于X时,X必含有码,

9、则RBCNF。即关系模式R(U, F)中,若每一个决定因素都包含码,则RBCNF。一个满足BCNF的关系模式:所有非主属性对每一个码都是完全函数依赖所有的主属性对每一个不包含它的码也是完全函数依赖没有任何属性完全函数依赖于非码的任一组属性21BCNF(3)若RBCNF,则R3NF,反之不一定。例1:SJP(S, J, P),函数依赖: (S, J) P; (J, P) S SJPBCNFSJP22BCNF(4)例2:STJ (S, T, J), 函数依赖: (S, J) T; (S, T) J; T JSTJ3NF但STJBCNF, 分解为 ST(S, T), (T, J)JST23BCNF(

10、5)仓库保管WPE(W#(仓库), P#(器件), E#(职工), QNT), 反映的语义:一个仓库有多个职工一个职工仅在一个仓库工作每个仓库里一种器件由专人负责,但一个人可以管理几种器件函数依赖: (W#, P#)QNT, (W#, P#)E#, E#W#, (E#, P#)QNT该关系模式是3NF24多值依赖(1)学校中某门课程由多个教师讲授,使用相同的一套参考书,每个教师可以讲授多门课程,每中参考书可以供多门课程使用。课程C教师T参考书B课程C教师T参考书B物理李勇普物数学李勇数学分析物理李勇光学原理数学李勇微分方程物理李勇物理习题数学李勇高等代数物理王军普物数学张平数学分析物理王军光学

11、原理数学张平微分方程物理王军物理习题数学张平高等代数25多值依赖(2)设R(U)是属性集U上的一个关系模式,X,Y,Z是U的子集,并且Z=U-X-Y。关系模式R(U)中的多值依赖XY成立,当且仅当对R(U)的任意关系r,给定的一对(x,z)值,有一组Y的值,这组值仅仅决定于x的值而与z值无关。这种依赖称为多值依赖(Multivalued Dependency, 简称MVD)。在上例中,CT。26多值依赖(3)在R(U)的任一关系r,如果存在元组t, s使得tX=sX,那么就必然存在有元组w,vr,使得wX=vX=t X,而wY=tY, wZ= sZ, vY=sY,vZ=tZ(即交换s, t元组

12、的Y值所得的两个新元组必在r中),则Y多值依赖于X,记作 XY。 其中X,Y是U的子集,并且Z=U-X-Y。若XY,而Z=,则称XY为平凡多值依赖。27多值依赖的性质(1)多值依赖具有对称(互补)性。即若XY,则XZ,其中, Z=U-X-Y。多值依赖具有传递性。即若XY,YZ,则XZ。函数依赖是多值依赖的特殊情况。即若XY则XY。28多值依赖的性质(2)多值依赖的合并规则:若XY,XZ,则XYZ。多值依赖的分解规则:若XY,XZ,则XYZ;多值依赖的分解规则:若XY,XZ,则XY-Z, X Z-Y。29多值依赖和函数依赖的区别多值依赖的有效性与属性集的范围有关。设有属性子集W,满足XY W U

13、,如果XY在U上成立,则在W上一定成立,反之则不一定。这种仅在U的子集上成立的多值依赖称为嵌入多值依赖。若函数依赖XY在R(U)上成立,则对于任何 均有XY成立。而对于多值依赖XY,若在R(U)上成立,却不能断定对于任何 有XY成立。304NF关系模式R(U, F)1NF,如果对于R的每个非平凡多值依赖XY(Y X),X都含有码,则R4NF。如果一个关系模式是4NF,则必为BCNF。P180例2中的关系模式不是4NF,可用投影分解的方法消去非平凡且非函数依赖的多值依赖,分解为WS(W, S)和WC(W, C)。31连接依赖(1)函数依赖表现为对属性值的约束,多值依赖实际上表示为对元组值的约束。

14、设有一关系SPJ(S#, P#, J#),如果此关系的语义满足下列条件: SPJ= SPJS#, P# SPJP#, J# SPJS#,J#即可分解为等价的三个二元关系,满足这样条件的分解称为无损连接分解(nonloss or lossless join decomposition)。32连接依赖(2)例SPJ A B在A中插入(S2,P1,J1),分解后的三个二元关系连接后为B所示。可见无损分解这样的语义约束对元组值施加了限制,即为连接依赖。 S#P#J#S1P1J2S1P2J1S#P#J#S1P1J2S192J1S2P1J1S1P1J133连接依赖(3)设X1、X2、Xn是关系R的属性集U

15、的子集,且 。若对R的任一值, 均成立,则称R具有连接依赖。记作: (X1, X2, , Xn)对连接依赖了解即可,在数据库设计中,几乎不需要考虑这种数据依赖。 34规范化小结(1)目的:使结构合理,消除存储异常使数据冗于尽量消,便于插入、删除和更新。原则:遵从概念单一化“一事一地”原则,即一个关系模式描述一个实体或实体间的一种关系。方法:将关系模式投影分解成两个或两个以上的关系模式。要求:分解后应保持属性间合理的联系。35规范化小结(2) 1NF消除 消除非主属性对码的部分函数依赖决定 2NF因素 消除非主属性对码的传递函数依赖 非码 3NF的非 消除主属性对码的部分和传递函数依赖平凡 BC

16、NF函数 消除非平凡且非函数依赖的多值依赖依赖 4NF36函数依赖的公理系统对于满足一组函数依赖F 的关系模式R,其任何一个关系r,若函数依赖 XY都成立,则称F 逻辑蕴含XY。即一关系模式如果满足F,则必然满足XY。为确定给定关系模式的码,为了从已知的函数依赖推导出其他函数依赖,Armstrong于1974年提出了一套推理规则,通常称之为Armstrong公理( Armstrongs axioms)。37Armstrong公理系统(1)设关系模式R(U,F), U为属性集总体,F是U上的一组函数依赖:A1自反律(Reflexivity):若Y X U,则XY为F所蕴含。这是一个平凡函数依赖。

17、A2增广律:如果XY为F所蕴含,且Z U,则XZYZ为F所蕴含。A3传递律:若XY及YZ为F所蕴含,则XZ为F所蕴含。38Armstrong公理系统(2)定理1:Armstrong公理是正确的,即如果F成立,则有F根据Armstrong公理所推导的函数依赖总是成立的。证明A1:设t, s是关系R中任意两个元组,如果tX=sX,由于Y X,有tY=sY,得证。 证明A2:设t, s是关系R中任意两个元组, 如果tXZ=sXZ,则有tX=sX和 tZ=sZ, 由于XY,可得tY=sY, 所以tYZ=sYZ,得证。39Armstrong公理系统(3)证明A3:设t, s是关系R中任意两个元组, 如果

18、tX=sX,则有tY=sY, 如果tY=sY,则有tZ=sZ, 由上可知:如果tX=sX,则有tZ=sZ, 即XZ,得证。40三条推理规则(1)合并规则:由XY, XZ,有XYZ。证明: 由XY得X XY (A2) 由XZ得XYYZ (A2) 所以:有XYZ。(A3)伪传递规则:由XY, WYZ,有XWZ。证明: 由XY得WXWY (A2) 由WYZ, 所以:有XYZ。A3)41三条推理规则(2)分解规则:由XY, Z Y,有XZ。证明: 由Z Y得YZ (A1) 由XY, 所以:有XZ。(A3)引理: XA1,A2, ,An成立的充要条件是XAi(i=1,2, n)成立。证明:由分解规则,如果XA1,A2, ,An成立则XAi(i=1,2, n)成立。由合并规则,由XAi(i=1,2, n)成立,则XA1,A2, ,An成立。得证。42习题(1)设学生(学号,姓名,年龄,性别,成绩,专业),该关系模式的主码是( )。 A 学号 B 学号,姓名 C 姓名 D 学号,姓名,年龄XAi(i=1,2, n)成立是XA1,A2, ,An成立的( )。 A 充分条件 B 必要条件 C 充要条件 D 既不充分也不必要关系数据课设计理论中,其核心作用的是: A 范式 B 模式设计 C 数据依赖 D 数据完整性43习题(2)

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论