第5章关系数据库理论_第1页
第5章关系数据库理论_第2页
第5章关系数据库理论_第3页
第5章关系数据库理论_第4页
第5章关系数据库理论_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

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

文档简介

1、1.关系数据库模式设计的问题关系数据库模式设计的问题内容导读2.函数依赖函数依赖3.范式范式4.模式分解模式分解5.多值依赖与第四范式多值依赖与第四范式解决什么问题?1.如何设计如何设计“好好”的关系模式?的关系模式?2.一个一个“不好不好”的关系模式如何转的关系模式如何转换成换成“好好”的关系模式?的关系模式? 对数据库应用程序而言,关系数据库设对数据库应用程序而言,关系数据库设计是系统成败的关键。计是系统成败的关键。详细和准确详细和准确的的E-R图图一般情况下:一般情况下:好的关好的关系模式系模式转换成 但是现实中由于对建模的业务规则理解但是现实中由于对建模的业务规则理解有偏差,或者设计中

2、犯下了一些错误,因此有偏差,或者设计中犯下了一些错误,因此并不总是能够设计出详细和准确的并不总是能够设计出详细和准确的E-RE-R图,图,从而使得设计出来的关系模式存在一些问题。从而使得设计出来的关系模式存在一些问题。例如:在教学管理数据库中设计这样一个关系模式:例如:在教学管理数据库中设计这样一个关系模式:教学(教学(学号学号,姓名姓名,年龄年龄,性别性别,系名系名,系主任系主任,课程名课程名,成绩成绩)其中其中:主码为主码为(学号学号,课程名课程名)数据冗余大数据冗余大:数据重复率高数据重复率高学号姓名年龄性别系名系主任课程名成绩98001李华20男计算机系王民程序设计8898001李华2

3、0男计算机系王民数据结构7498001李华20男计算机系王民数据库8298001李华20男计算机系王民电路6598002张平21女计算机系王民程序设计9298002张平21女计算机系王民数据结构8298002张平21女计算机系王民数据库7898002张平21女计算机系王民电路8398003陈兵20男数学系赵敏高等数学7298003陈兵20男数学系赵敏数据结构9498003陈兵20男数学系赵敏数据库8398003陈兵20男数学系赵敏离散数学87 插入异常插入异常:该插入的数该插入的数据未被插入据未被插入删除异常删除异常:不该删除的不该删除的信息被删除信息被删除更新异常更新异常:数据数据修改时修改

4、时,冗余数冗余数据未被修改据未被修改2.1 关系模式的简化表示法关系模式的简化表示法关系模式可以用三元组来为:关系模式可以用三元组来为: RU,F. 其中:其中:R为关系名;为关系名;U为关系的属性集合;为关系的属性集合;F为属性为属性集集U的数据依赖集。的数据依赖集。2.2 函数依赖的概念函数依赖的概念1) 在关系在关系R中中,若给定若给定X(单属性或多属性单属性或多属性)值,值,Y属性有唯一值与之对应,则称属性有唯一值与之对应,则称X确定确定Y,或,或Y依赖于依赖于X,记作,记作XY。(X唯一确定唯一确定Y)例如,对于教学关系模式:教学例如,对于教学关系模式:教学U,F;U=学号学号,姓名

5、姓名,年龄年龄,性别性别,系名系名,系主任系主任,课程名课程名,成绩成绩;F=学号学号姓名姓名,学号学号年龄年龄,学号学号性别性别,学号学号系名系名,系系名名系主任系主任, (学号,课程名学号,课程名)成绩成绩. 2.3非平凡的函数依赖非平凡的函数依赖 XY,但,但Y X,则称,则称XY是是非平凡的函数依非平凡的函数依赖赖。若不特别声明,总是讨论非平凡的函数依赖。若不特别声明,总是讨论非平凡的函数依赖。 XY,但,但Y X,则称,则称XY是是平凡的函数依赖平凡的函数依赖。 若若XY,则,则X叫做叫做决定因素决定因素,Y叫做叫做依赖因素依赖因素。 若若XY,YX,则记作,则记作XY。 若若Y不函

6、数依赖于不函数依赖于X,则记作,则记作X Y。 2.4 完全函数依赖、部分函数依赖 在在RU中,如果中,如果XY,并且对于,并且对于X的任何一个的任何一个真子集真子集X,都有,都有X Y,则称,则称Y对对X完全函数依赖完全函数依赖,记作:记作:XY;若;若XY,但,但Y不完全函数依赖于不完全函数依赖于X,则称则称Y对对X部分函数依赖部分函数依赖,记作:,记作: XY。FP例如,在教学关系模式:例如,在教学关系模式: ( (学号,课程名学号,课程名)成绩,成绩, ( (学号,学号,课程名课程名)姓名姓名PF思考:若已知思考:若已知F FABAB,CD;CD; 请问下列哪个是部分函数依赖,哪个是请

7、问下列哪个是部分函数依赖,哪个是完全函数依赖?完全函数依赖? (1 1)AD B AD B (2 2)AC EAC E (3 3)BC D BC D (4 4)ADAD 2.5 传递函数依赖 在在R RU U中,如果中,如果XYXY,Y XY X,YZYZ,则称,则称Z Z传递传递函数依赖于函数依赖于X X。传递函数依赖记作。传递函数依赖记作X ZX Z。例如,在教学模式中,例如,在教学模式中,因为:学号因为:学号系名,系名, 系名系名系主任;所以:学号系主任;所以:学号 系主任。系主任。传递传递2.7 2.7 属性集的闭包属性集的闭包 设有设有R(U,F),R(U,F),若若A A是是R R

8、的属性集的属性集, ,在在F F下同下同A A确定所确定所有属性的集合称为有属性的集合称为F F下下A A的闭包的闭包, ,记为记为(A)(A)F F+ +。n【例例5-1】已知关系已知关系RU,F,其中,其中U=A,B,C,D,E,F=ABC,BD,CE,ECB,ACB,求,求(AB)F+。设设X=AB XF(0)=AB XF(1)=ABCD XF(2)=ABCDE XF(3)= XF(2)=ABCDE (AB)F+=ABCDE=A,B,C,D,E2.8 无损分解无损分解2.8 无损分解无损分解2.9 保持依赖保持依赖n【例例5-2】关系模式关系模式R=CITY,ST,ZIP,其,其中中CI

9、TY为城市,为城市,ST为街道,为街道,ZIP为邮政编码,为邮政编码,F=(CITY,ST)ZIP,ZIPCITY。如果。如果将将R分解成分解成R1和和R2,R1=ST,ZIP,R2=CITY,ZIP,检查分解是否具有无损连接,检查分解是否具有无损连接和保持函数依赖。和保持函数依赖。解:解:1) 检查无损连接性。检查无损连接性。求得:求得:R1R2=ZIP;R2-R1=CITY. (ZIPCITY)F+. 分解具有无损连接性分解具有无损连接性2) 检查分解是否保持函数依赖检查分解是否保持函数依赖求得:求得:R1(F)=;R2(F)= ZIPCITY. R1(F)R2(F)= ZIPCITYF+

10、. 该分解不保持函数依赖。该分解不保持函数依赖。 2NF3NF(一个关系至少达到该范式才是可用的)(一个关系至少达到该范式才是可用的)BCNF4NF5NF消除非主属性对码的部分函数依赖消除非主属性对码的部分函数依赖消除非主属性对码的传递函数依赖消除非主属性对码的传递函数依赖消除主属性对码的传递函数依赖消除主属性对码的传递函数依赖消除非平凡且非函数依赖的多值依赖消除非平凡且非函数依赖的多值依赖消除不是由候选关键字蕴含的连接依赖消除不是由候选关键字蕴含的连接依赖n找出关系的候选码找出关系的候选码n列出关系的主属性和非主属性集合列出关系的主属性和非主属性集合n若存在非主属性对码的部分依赖,则该关系只若存在非主属性对码的部分依赖,则该关系只满足满足1NF1NF,消除后可达,消除后可达2NF2NFn若存在非主属性对码的传递依赖,则该关系只若存在非主属性对码的传递依赖,则该关系只满足满足2NF2NF,消除后可达,消除后可达3NF3NFn若存在主属性对码的传递依赖,则该关系只满若存在主属性对码的传递依赖,则该关系只满足足3NF3NF,消除后可达,消除后可达BCNFBCNF 在关系模式在关系模式STC(S,T,C)中,)中,S表示学生,表示学生,T表示教师,表示教

温馨提示

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

最新文档

评论

0/150

提交评论