数据库技术及应用第6章关系数据库理论课件_第1页
数据库技术及应用第6章关系数据库理论课件_第2页
数据库技术及应用第6章关系数据库理论课件_第3页
数据库技术及应用第6章关系数据库理论课件_第4页
数据库技术及应用第6章关系数据库理论课件_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

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

文档简介

1、第6章 关系数据库理论 6.1 关系模式规范化的必要性 6.2 函数依赖及其关系的范式 6.3 多值依赖及关系的第四范式 6.4 关系规范化小结 习题6 6.1 关系模式规范化的必要性 6.1.1 关系模式应满足的基本要求 1. 元组的每个分量必须是不可分的数据项 关系数据库特别强调,关系中的属性不能是组合属性,必须是基本项,并把这一要求规定为鉴别表格是否为“关系”的标准。 2 . 数据库中的数据冗余应尽可能少 数据冗余大是指数据库中重复的数据过多。 3. 关系数据库不能因为数据更新操作而引起数据不一致的问题 4. 当执行数据插入操作时,数据库中的数据不能产生插入异常现象 5. 数据库中的数据

2、不能在执行删除操作时产生删除异常问题 6. 数据库设计应考虑查询要求,数据组织应合理 6.1.2 关系规范化可能出现的问题 例如,要求设计一个教学管理数据库,希望从该数据库中得到学生学号、学生姓名、年龄、性别、系别、系主任姓名、学生学习的课程和该课程的成绩信息。若将此信息要求设计为一个关系,则关系模式为教学(学号,姓名,年龄,性别,系名,系主任,课程名,成绩)可以推出此关系模式的码为(学号,课程)。仅从关系模式上看,该关系已经包括了需要的信息,如果按此关系模式建立关系,并对它进行深入分析,就会发现其中的问题所在。不规范关系的实例教学关系如表6-1所示。 表6-1 不规范关系的实例教学关系 1.

3、 数据冗余大 每一个系名和系主任的名字存储的次数等于该系的学生人数乘以每个学生选修的课程门数,系名和系主任数据重复量太大。 2. 插入异常 一个新系没有招生时,系名和系主任名无法插入到数据库中,因为在这个关系模式中,主码是(学号,课程),而这时因没有学生而使得学号无值,所以没有主属性值,关系数据库无法操作,因此引起插入异常。 3. 删除异常 当一个系的学生都毕业了而又没招新生时,删除了全部学生记录,随之也删除了系名和系主任名。 4. 更新异常 若某系换系主任,数据库中该系的学生记录应全部修改。 6.1.3 模式分解是关系规范化的主要方法 对于有问题的关系模式,可以通过模式分解的方法使之规范化。

4、 例如上述的关系模式“教学”,可以按“一事一地”的原则分解成“学生”、“教学系”和“选课”三个关系,其关系模式为 学生(学号,姓名,年龄,性别,系名称) 教学系(系名,系主任) 选课(学号,课程名,成绩)表6-2 教学关系分解后形成的三个关系 6.2 函数依赖及其关系的范式1. 关系模式的简化表示法关系模式的完整表示是一个五元组:RU,D,Dom,F其中:R关系名。U关系的属性集合。D属性集U中属性的数据域。Dom属性到域的映射。F属性集U的数据依赖集。 2. 函数依赖的概念 定义6-1:设RU是属性集U上的关系模式,X、Y是U的子集。若对于RU的任意一个可能的关系r,r中不可能存在两个元组在

5、X上的属性值相等,而Y上的属性值不等,则称X函数确定Y函数,或Y函数依赖于X函数,记作XY。 3. 1NF的定义 关系的第一范式是关系要遵循的最基本的范式。 定义6-4:如果关系模式R,其所有的属性均为简单属性,即每个属性都是不可再分的,则称R属于第一范式(First Normal Form,简称1NF),记作R 1NF。 表6-3 非第一范式 表6-4 第一范式 4. 2NF的定义 定义6-5:若R(1NF,且每一个非主属性完全依赖于码,则R 2NF。 5. 3NF的定义 定义6-6:关系模式RU,F中若不存在这样的码X、属性组Y及非主属性Z(Z(Y)使得XY、YX、YZ成立,则称RU,F

6、3NF。 6. BCNF的定义 通常认为BCNF是修正的第三范式,有时也称它为扩充的第三范式。 定义6-7:关系模式RU,F 1NF。若XY且Y(X时X必含有码,则RU,F BCNF。 BCNF的定义可以得到结论,一个满足BCNF的关系模式有以下特性: (1) 所有非主属性对每一个码都是完全函数依赖。 (2) 所有的主属性对每一个不包含它的码,也是完全依赖。 (3) 没有任何属性完全函数依赖于非码的任何一组属性。 7. BCNF和3NF的比较 BCNF和3NF的区别主要反映在以下两点: (1) BCNF不仅强调其他属性对码的完全的直接的依赖,而且强调主属性对码的完全的直接的依赖,它包括3NF,

7、即R(BCNF,则R一定属于3NF。 (2) 3NF只强调非主属性对码的完全直接依赖,这样就可能出现主属性对码的部分依赖和传递依赖。6.3 多值依赖及关系的第四范式 1. 研究多值依赖的必要性 下面先通过一个具体实例来观察含有多值依赖的关系模式会出现什么问题。 例如,给定一个关系模式JPW(产品,零件,工序),其中每种产品由多种零件构成,每个零件在装配时需要多道工序。设产品电视机需要的零件和工序如图6-1所示。 图6-1 JPW数据实例 将图6-1中的数据输入到JPW关系中,如表6-5所示,可以看出,数据冗余十分明显。但该表由于不存在函数依赖,并且是全码,所以JPW属于BCNF,这说明属于BC

8、NF的关系仍然会存在一些问题。要想消除此类问题,需要研究多值依赖及相关的范式理论。表6-5 JPW的一个关系 2. 多值依赖的定义和性质 定义6-8:设有关系模式RU,U是属性集,X、Y是U的子集。 多值依赖具有以下性质: (1) 多值依赖具有对称性。 (2) 函数依赖可以看作是多值依赖的特殊情况。 (3) 在多值依赖中,若X Y且Z=U-X-Y,则称X Y为非平凡的多值依赖,否则称为平凡的多值依赖。 多值依赖与函数依赖相比,具有以下两个基本的区别:(1) 多值依赖的有效性与属性集的范围有关。(2) 多值依赖没有自反律。 3. 4NF的定义 定义6-9:关系模式RU,F(1NF,如果对于R的每

9、个非平凡多值依赖X Y(Y(X),X必含有码,则称RU,F 4NF。 6.4 关系规范化小结 在关系数据库中,对关系模式的基本要求是满足第一范式。在此基础上,为了消除关系模式存在插入异常、删除异常、修改复杂和数据冗余等问题,要对关系模式进一步规范化,使之逐步达到2NF、3NF、BCNF、4NF和5NF。规范化过程如图6-2所示。图6-2 各种范式及规范化过程 习 题 6 6.1 解释下列术语: 函数依赖,部分函数依赖,完全函数依赖,传递函数依赖,候选关键字,主关键字,全关键字,1NF,2NF,3NF,BCNF,多值依赖,4NF。 6.2 现在要建立关于系、学生、班级、学会诸信息的一个关系数据库

10、。语义为:一个系有若干专业,每个专业每年只招一个班,每个班有若干学生,一个系的学生住在同一个宿舍区,每个学生可参加若干学会,每个学会有若干学生。 描述学生的属性有:学号、姓名、出生日期、系名、班号、宿舍区; 描述班级的属性有:班号、专业名、系名、人数、入校年份; 描述系的属性有:系名、系号、系办公室地点、人数; 描述学会的属性有:学会名、成立年份、地点、人数、学生参加某会有一个入会年份。 (1) 请写出关系模式。 (2) 写出每个关系模式的最小函数依赖集,指出是否存在传递依赖。在函数依赖左部是多属性的情况下,讨论函数依赖是完全依赖,还是部分函数依赖。 (3) 指出各个关系模式的候选关键字、外部

11、关键字,有没有全关键字。 6.3 有关系模式A(C,T,H,R,S),其中各属性的含义是:C,课程;T,教员;H,上课时间;R,教室;S,学生。根据语义有如下函数依赖集:F=CT,(H,R)C,(H,T)R,(H,S)R。现将关系模式A分解为两个关系模式A1(C,T),A2(H,R,S),则其中A1的规范化程度达到_。 A. 1NF B. 2NF C. 3NF D. BCNF 6.4 设关系模式RA,B,C,D,函数依赖集F=AC,CA,BAC,DAC,BDA。 (1) 求出R的候选码。 (2) 求出F的最小函数依赖集。 (3) 将R分解为3NF,使其既具有无损连接性又具有函数依赖保持性。 6.5 判断下面的关系模式是不是BCNF,为什么? (1) 任何一个二元关系。 (2) 关系模式选课(学号,课程号,成绩),函数依赖集F=(学号,课程号)成绩。 (3) 关系模式R(A,B,C,D,E,F),函数依赖集F=ABC,BCA,BCDEF,EC。 6.6 设关系模式RB,O,I,S,Q,D,函数依赖集F=SD,IS,ISQ,BQ。 (1) 找出R的主码。 (2) 把R分解为BCNF,且具有无损连接性和函数依赖保持性。 6.7 在关系模式选课(学号,课程号,成绩)中,“学号

温馨提示

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

最新文档

评论

0/150

提交评论