




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1 数据库根底与应用主教材:?数据库根底与应用?新版辅导教师:吴旻倩Email:2关系数据库系统具有三级模式结构,最主要的是中间层的全局模式结构,简称关系数据库模式或数据库模式。一个关系数据库模式由一个面向具体应用所涉及的假设干个关系模式所 组成,这些关系模式通过外码建立相互联系,形成一个结构化的数据整体。3一个数据库系统逻辑设计的好坏主要看数据库模式设计的好坏,一个数据库模式设计的好坏又主要看所含的各个关系模式设计的好坏。如果各个关系模式结构结构合理、功能简单明确、标准化程度高。就能够确保所建立的数据库具有:较少的数据冗余、较高的数据共享度、较好的数据一致性、较灵活和方便的数据更新能力。4数
2、据依赖在现实生活中,事物之间内部的各特征之间存在着相互依赖和制约的关系。用数据来描述和处理,需要把具有共同特征的事物归为一类。并可进一步细分。如把人归为一类,把书归为一类等。如针对学校的数据库管理需要,把所有人员分为教师类、管理人员类和学生类。5每一种类型的数据与数据之间的联系,在关系数据库系统中都是 利用相应的关系来描述的。因为关系是由属性构成的,所以数据依赖的根底是属性之间的数据依赖。数据依赖包括函数依赖和多值依赖两个方面。在一个关系中,属性=变量,属性域=变量的取值范围,属性在元组上的取值=属性变量的当前值。单值映射函数,多值函数。如:f(x)=2x,f(n)=(-1)n等。6定义1:设
3、一个关系为RU,X和Y为属性集U上的子集,假设对于元组中X上的每个值都有Y上的一个惟一值与之对应,那么称X和Y具有函数依赖关系,并称X函数决定Y,或称Y函数依赖于X,记作XY,称X为决定因素。例3-1设一个职工关系职工号,姓名,性别,年龄,职务就有函数依赖关系:职工号姓名,职工号性别,职工号年龄,职工号职务。7假设一个关系中的属性子集X不能函数决定另一个属性子集Y,那么记作X/Y,读作X不能函数决定Y,或Y不能函数依赖于X。定义2:设一个关系为RU,X和Y为属性集U上的子集, 假设XY且XY Y不是X的子集,那么称XY为非平凡函数依赖,否那么假设XY Y是X的子集 ,那么必有XY,称XY 为平
4、凡函数依赖。因为整体决定局部,平凡函数总是成立的。就是说,8关系中一个元组的任一属性值能够函数决定它自己的值,任一属性组的值能够函数决定任一属性或属性子集的值。平凡函数依赖又称为函数依赖的自反性规那么。如在职工关系中,职工号总能函数决定它本身,对于任给一个职工号,都有它本身的职工号值惟一对应;职工号和性别构成的属性子集总是能够函数决定其中的职工号或性别属性,记作职工号,性别职工号和职工号,性别性别。通常讨论的都是非平凡函数。9定义3:设一个关系为RU,X和Y为属性集U上的子集, 假设XY,同时X的一个真子集X也能够函数决定Y,即X Y ,那么称X局部函数决定Y,或Y局部函数依赖于X,记作X -
5、pY。否那么,假设不存在一个真子集X,使得X也能够函数决定Y,那么称X完全函数决定Y,或Y完全函数依赖于X,记作X -fY。 XY的局部函数依赖也称为局部函数依赖。例如:10例如:在职工关系中,职工号与其他每个属性之间的函数依赖都是完全函数依赖。真子集职工号年龄,所以存在局部函数依赖:职工号,性别-p年龄。以下图11SNO,CNO f GRADE 完全函数依赖SNO,CNO p CREDIT 局部函数依赖SNOCNOGCRSC1函数依赖示意图12例3-2设一个教师任课关系教工号,姓名,职称,课程号,课程名,课时数,课时费函数依赖分析:主码:教工号,课程号教工号姓名,教工号职称;课程号课程名,课
6、程号课时数;完全函数依赖:职称,课程号 -f课时费局部函数依赖:教工号,课程号 -p姓名,教工号,课程号 -p职称,13定义4:设一个关系为RU,X,Y和Z为属性集U上的子集, 其中XY, YZ,但YX, YZ Z不是Y的子集 那么存在XZ ,称此为传递函数依赖,即X传递函数决定Z,Z传递函数依赖于X。14例3-3设一个学生关系学号,姓名,性别,系号,系名,系主任名,函数依赖分析:15定义5:设一个关系为RU,X,Y和Z为属性集U上的子集, 假设XY, 那么存在XZYZ 和XZY 。16定义6:设一个关系为RU,X和Y为属性集U上的子集, 假设XY, 并且为完全非平凡函数依赖,同时Y为单值属性
7、,那么称XY为R的最小函数依赖。由R中所有最小函数依赖构成R的最小函数依赖集,其中不含有冗余的传递函数依赖 。例3-4设一个关系RA,B,C,D,函数依赖集FD=A B,B C,A C,B D,判断它是否为R的最小函数依赖集。 分析:A C冗余,应去掉,就成为R的最小函数依赖集。17例3-5P54分析:最小函数依赖集为FD1=职工号姓名,职工号性别,职工号年龄,职工号职务FD2=教工号姓名,教工号职称,课程号课程名,课程号课时数,职称,课程号 课时费FD3=学号姓名,学号性别,学号系号,系号系名,系号系主任名18定义7:设一个关系为RU,X为U的一个子集, 假设X能够函数决定U中的每个属性,且
8、X的任何真子集都不能函数决定U中的每个属性,那么称X为关系R的一个侯选码。侯选码的等价定义:假设关系中一个属性或属性组能够函数决定整个元组,并且它的任何子集都不能函数决定整个元组,那么它被称为该关系的一个侯选码 。例3-6设P55 19分析:侯选码FD1=职工号姓名,职工号性别,职工号年龄,职工号职务FD2=教工号姓名,教工号职称,课程号课程名,课程号课时数,职称,课程号 课时费FD3=学号姓名,学号性别,学号系号,系号系名,系号系主任名20例3-7P55分析:最小函数依赖集:FD=教师号姓名,课程号课程名,课程号课程学分,专业号专业名,教师号,课程号,专业号 教学等级分21例3-8P56 设
9、RA,B,C,D,E,F,最小函数依赖集FD=A B,A C,C,D E,求侯选码?分析:侯选码A,D,F22函数依赖的常用规那么:P56自反性:假设XY,那么存在XY。增广性:假设XY,那么存在XZYZ。传递性:假设XY和YZ,那么存在XZ。合并性:假设XY和XZ,那么有XYZ。分解性:假设XY且YZ,那么存在XZ。伪传递性:假设XY和WYZ,那么存在WXZ。复合性:假设XY和ZW,那么存在XZYW。自增性:假设XY,那么存在WXY。233.2 关系标准化关系数据库由相互联系的一组关系所组成,每个关系包括关系模式和关系值两个方面。关系模式是对关系的抽象定义,给出关系的具体结构;关系值是关系的
10、具体内容,反映关系在某一时刻的状态。24一个关系包含许多元组,每个元组都是符合关系模式结构的一个具体值,并且局部属于相应的属性。在关系数据库中的每个关系都需要进行标准化,使之到达一定的标准化程度,从而提高数据的结构化程度、共享性、一致性和可操作性。25对关系进行标准化分为六个级别,从高到底为第一范式、第二范式、第三范式、BC范式、第四范式、第五范式。通常只要求标准到第三范式就可以了,并且前三个范式能够很好地保持数据的无损连接性和函数依赖性,再向后标准化容易破坏这两个特性,有时可能得不偿失。26关系标准化定义8:设一个关系RU,假设U中的每个属性都是不可再分的,或者说都是不被其他属性所包含的独立
11、属性,那么称关系RU是符合第一范式的。记为1NF。关系数据库中的每个关系都必须到达第一范式最起码的要求。假设一个关系不满足第一范式,那么称为非标准化的关系,否那么称为标准化的关系。假设库中所有关系都满足1NF,那么称为27例3-9P57 通信录关系T姓名,性别,单位,省市, , 长途区号,办公 ,家庭 因为 属性不是一个原子属性,所以它不是一个标准化的关系。提升标准为1NF,得到的T姓名,性别,单位,省市, ,长途区号,办公 ,家庭 。或分解为两个关系:T1姓名,性别,单位,省市, T2姓名,长途区号,办公 ,家庭 , 号码28例3-10P58 借阅图书关系J借阅证号,姓名,性别,借阅图书登记
12、图书号1,书名1,图书号2,书名2,图书号3,书名3 因为借阅图书登记属性不是一个原子属性,所以它不是一个标准化的关系。提升标准为1NF。方法一:再原关系中增加独立属性,取消分栏。得到:J借阅证号,姓名,性别,图书号1,书名1,图书号2,书名2,图书号3,书名3 。由于每个人借阅情况不同,按这种方法标准化将出现许多空值,浪费存储空间,不便于DBMS进行管理,应采用第二种方法。29方法二:分解为两个关系:J1借阅证号,姓名,性别J2借阅证号,图书号,书名,借阅日期,归还日期方法三:P6030第二范式定义9:设一个关系RU,它是满足第一范式的,假设R中的不存在非主属性对侯选码的局部函数依赖,那么称
13、该关系U是符合第二范式的。记为2NF。一个关系假设只满足第一范式,那可能会带来数据冗余和操作异常。操作异常:插入、删除和修改异常,又称为更新异常或存储异常。31例3-11P60 学生选课关系SSC学生号,姓名,性别,专业,课程号,课程名,课程学分,成绩根据SSC关系模式的语义,可得出最小函数依赖集FD:FD=学生号姓名,学生号性别,学生号专业,课程号课程名,课程号课程学分,学生号,课程号 成绩 该关系存在非主属性对主码的局部依赖。必然存在数据冗余和操作异常P61。32“事务的概念:P61为了消除局部函数依赖,对SSC分解为:S学生号,姓名,性别,专业C课程号,课程名,课程学分SC学生号,课程号
14、,成绩对应的最小函数依赖集分别为:FD1=学生号姓名,学生号性别,学生号专业FD2=课程号课程名,课程号课程学分FD3=学生号,课程号 成绩关系实例P62表3-7、3-8、3-933正确的分解要求关系的无损分解和无损连接。即通过外码自然连接完全能得到原来的关系;同时,分解后的每个关系的最小函数依赖集都是原关系的最小函数依赖集的子集。这种分解才是正确、有效和合理的分解。一个关系中所有侯选码都是单属性,就不存在局部函数依赖,满足1NF也就满足2NF。只有出现复合侯选码时才有可能存在局部函数依赖,才需要判断和消除局部函数依赖,通过分解 到达2NF。34第三范式定义10:设一个关系RU,它是满足第一范
15、式的,假设R中的不存在非主属性对侯选码的传递函数依赖,那么称该关系U是符合第三范式的。记为3NF。假设一个数据库中所有关系都到达了3NF自然也就包括到达2NF那么称该数据库是符合第三范式的。一个关系假设只满足第二范式,仍然存在着由传递依赖带来数据冗余和操作异常。35例3-12P63 一个关系SDH=学号,姓名,性别,籍贯,系号,系名,系地址,系 ,宿舍号,宿舍 实例表3-10根据SDH关系模式的语义,可得出最小函数依赖集FD:FD=学号姓名,学号性别,学号籍贯,学号系号,系号系名,系号系地址,系号系 ,学号宿舍号,宿舍号宿舍 由于该关系是单属性侯选码,所以不存在局部依赖,自然 满足2NF。但存
16、在传递依赖,所以必然会产生数据冗余和操作异常P64。消除R的传递依赖也是通过R的分解来实现的。36对关系SDH分解: SDH 3NFD=系号,系名,系地址,系 H=宿舍号,宿舍 S=学号,姓名,性别,籍贯,系号,宿舍号对应的最小函数依赖集FD:FDD=系号系名,系号系地址,系号系 FDH=宿舍号宿舍 FDS=学号姓名,学号性别,学号籍贯,学号系号,学号宿舍号关系实例P65 表3-11、3-12、3-1337例3-13P65 一个关系模式S=学生,教师,课程,成绩,学术分,奖金额。请分解成3NF。由关系模式,可得出最小函数依赖集FD:FD=学生,课程成绩, 教师,课程学术分,学术分奖金额 学生,
17、课程,教师为S的侯选码。由于该关系是存在局部依赖和传递依赖,不符合3NF。首先消除传递依赖,然后消除局部依赖。38消除传递依赖,得到两个关系模式:S1=学术分,奖金额SS=学生,教师,课程,成绩,学术分接着从SS中消除学生,课程成绩的局部依赖,得到两个关系模式:S2=学生,课程,成绩SSS=学生,教师,课程,学术分再接着从SSS中消除教师,课程学术分的局部依赖,得到两个关系模式:S3=教师,课程,学术分S4=学生,教师,课程39在关系模式S=学生,教师,课程,成绩,学术分,奖金额假设每门课程可以由不同教师主讲。那么该关系函数依赖集FDS:FDS=学生,课程成绩, 教师,课程学术分,学术分奖金额
18、,课程教师 该关系的最小函数依赖集FD:FD= 学生,课程成绩, 课程学术分,学术分奖金额,课程教师 40该关系的最小函数依赖集FD:FD= 学生,课程成绩, 课程学术分,学术分奖金额,课程教师该关系中存在局部依赖和传递依赖,分解得到三个关系模式:S1=学术分,奖金额S2=课程,教师,学术分S3=学生,课程,成绩41例3-14P67 教师任课关系X=教工号,姓名,职称,课程号,课程名,课时数,课时费。请分解成3NF。最小函数依赖集FD:FD=教工号姓名,教工号职称,课程号课程名,课程号课时数,职称,课程号课时费 教工号,课程号为关系的侯选码和主码。首先消除传递依赖,然后消除局部依赖。42X=教
19、工号,姓名,职称,课程号,课程名,课时数,课时费首先消除传递依赖X1 =职称,课程号,课时费XX=教工号,姓名,职称,课程号,课程名,课时数然后消除XX局部依赖X2 =课程号,课程名,课时数XXX=教工号,姓名,职称,课程号再接着消除XXX局部依赖X3 =教工号,姓名,职称X4=教工号,课程号43设一个关系R,假设分解成两个关系R1和R2后,函数依赖R1RR1R2或R1 R 2 R2 R1 能够被该关系R的最小函数依赖集所蕴涵,那么称此分解为无损分解,并称具有无损连接性。假设分解后的各关系的最小函数依赖集的并等于原关系的最小函数依赖集,那么称此分解保持了函数依赖性。443.2.4 BC范式又简
20、称BCNF,它比第三范式程度更高。定义11:设一个关系RU,它是满足第一范式的,当R中的不存在任何属性对侯选码的传递函数依赖,那么称该R是符合BCNF 。BCNF的等价定义:假设R中的所有属性都完全直接依赖于侯选码,或者说R的最小函数集中的所有函数依赖的决定因素都是侯选码,那么R是符合BCNF 。45在第三范式中,只要求非主属性不传递依赖于侯选码,没有强调主属性是否传递依赖于侯选码;而在BCNF中,不但要求非主属性,而且要求主属性都不能传递依赖于侯选码,当然传递依赖包含局部依赖在内。假设一个关系虽然到达了第三范式要求,但没有到达BCNF要求,说明在主属性中存在着局部依赖或传递依赖,这也会带来数
21、据冗余和操作异常,经常也需要继续分解使之到达BCNF,不过此分解过程可能破坏无损连接性和函数依赖性。46例3-15 P68 一个库存管理关系W仓库号,商品号,职工号,商品数量假定:P68。分析:该关系的最小函数依赖集FD:FD=职工号仓库号,仓库号,商品号职工号,仓库号,商品号商品数量 该关系的侯选码仓库号,商品号和 职工号,商品号 。仓库号,职工号,商品号都是主属性,只有商品数量是非主属性。存在传递依赖和局部依赖P68,所以需要标准化。47首先消除传递依赖,得到符合第三范式的关系:W1=仓库号,商品号,商品数量W W =仓库号,商品号,职工号接着从W W 中消除局部函数依赖:W2=职工号,仓库号 W3=职工号,商品号至此分解完成,W1、W2、W3都符合BCNF要求,但从第三范式到BCNF时,使函数依赖“仓库号,商品号职工号消失了,即破坏了原有的函数依赖性。所以在数据库应用中通常标准化到第三范式就可以了,再向后标准化可能带来负面影响。48标准化小结 标准化过程是逐步消除关系模式中不适合的数据依赖的过程,使数据库模型中的各个关系模式到达某种程度的别离。1NF2NF3NFBCNF消除非主属性对关键字的局部
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 胀管螺丝行业深度研究报告
- 三医政策分析半年报2025(极简版)
- 营运电动车过户管理办法
- 蓬莱艾山保护区管理办法
- 衔接资金项目库管理办法
- 健康活动不贪食冷饮课件
- 衢州公积金提前管理办法
- 西安住校生封闭管理办法
- 规范代收费管理暂行办法
- 设备液压与润滑管理办法
- 自然资源调查监测劳动和技能竞赛
- 学习兴税2024题库(货劳条线)
- SOR-05-009-00 委托检验质量协议模板
- 2024-2025学年人教版七年级数学上册期末达标测试卷(含答案)
- 青海省西宁市(2024年-2025年小学四年级语文)人教版质量测试(下学期)试卷及答案
- DB43-T 3008-2024 三维地理信息模型数据产品质量检查与验收技术规范
- 2024足球竞赛规则全套解读
- SMAW和GTAW焊接作业焊接工艺
- DL∕T 1909-2018 -48V电力通信直流电源系统技术规范
- 大沥中学初一分班考试卷
- 苏教版2023-2024学年小学五年级下册数学暑假练习(假期作业)合集21份
评论
0/150
提交评论