资源描述:
《数据库原理 第6章 关系数据库理论》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第6章关系数据库理论本章主要内容如何判断一个关系模型的“好”与“坏”如何依据关系数据理论设计出好的关系模型根据函数依赖、模式分解和关系规范化等内容,讨论什么样的关系是“坏”的关系,如何将“坏”的关系转换为“好”的关系等。本章学习目标理解函数依赖、及其相应的概念和术语;掌握模式分解的准则;理解关系范式的定义,掌握关系规范化的方法。本章重点和难点重点:围绕函数依赖的概念、理解和掌握关系规范化的方法,为以后设计关系数据库奠定一个良好基础。难点:理解最小等价集的概念。6.1函数依赖Y=f(X)函数Y=sin(X)Y=X+1Y=X2+2X+1省=f(城市)姓名=f(学号)函数依赖的直观定义:如
2、果有一个关系模式R(A1,A2,…,An),X和Y为{A1,A2,…,An}的子集,那么对于关系R中的任意一个X值,都只有一个Y值与之对应,则称X函数决定Y,或Y函数依赖于X。例:院系(编号,名称,负责人,地点)有函数依赖:编号→名称(名称函数依赖于编号)编号→负责人(负责人函数依赖于编号)名称→地点(地点函数依赖于名称)名称→编号(编号函数依赖于名称)……函数依赖的严格形式化定义:设有关系模式R(A1,A2,…,An),X和Y均为{A1,A2,…,An}的子集,r是R的任一具体关系,t1、t2是r中的任意两个元组;如果由t1[X]=t2[X]可以推导出t1[Y]=t2[Y],则称X
3、函数决定Y,或Y函数依赖于X,记为X→Y。6.1.2为什么要讨论函数依赖数据冗余问题数据更新问题数据插入问题数据删除问题存在什么问题?如何将“坏”的关系模式转换成“好”的关系模式?6.1.3术语和符号非平凡函数、平凡函数依赖不函数依赖于决定因素关系模式主属性、非主属性函数等价完全函数依赖、部分函数依赖传递函数依赖术语:非平凡函数、平凡函数依赖如果X→Y,但Y不包含于X,则称X→Y是非平凡的函数依赖。如:(学号,课程号)→成绩如:(学号,学院)→学院非平凡依赖平凡依赖举例:关系模式:学生(学号,姓名,年龄)(学号,姓名)→姓名函数依赖学号→姓名函数依赖平凡非平凡术语:不函数依赖于如果Y
4、不函数依赖于X,则记作XY。如学号不函数依赖于性别,则记作性别学号。术语:决定因素如果X→Y,则X称作决定因素。如学号→学院,则学号称作决定因素用U表示关系模式R的属性全集,即U={A1,A2,…,An},用F表示关系模式R上的函数依赖集,则关系模式R可表示为R(U,F)。关系模式如U={编号,名称,负责人,地点}F={编号→负责人,编号→地点,编号→名称,名称→编号}则R(U,F)表示院系关系术语:主属性、非主属性如果K是关系模式R(U,F)的任一候选关键字,X是任一属性或属性集,如果XK,则X称为主属性;否则称为非主属性。因为(学号,课程号)是选课关系的关键字,所以学号和课程号
5、均是主属性,而成绩为非主属性。例如:选课(学号,课程号,成绩)术语:函数等价如果X→Y,并且Y→X,则可记作X←→Y,这时X和Y可以称做函数等价。如在院系关系上:编号→名称,名称→编号所以在院系关系上编号和名称可以称作函数等价。如果X→Y,并且对于X的一个任意真子集X/都有X/Y,则称Y完全函数依赖于X,并记作;如果X/→Y成立,则称Y部分函数依赖于X,并记作。如:(学号,课程号)→成绩完全函数依赖而:(学号,院系)→负责人部分函数依赖术语:完全函数依赖、部分函数依赖举例:1、如果在关系模式R(A,B,C)中存在(A,B)→C和B→C,则(A,B)→C为函数依赖。2、如果在关系模式R
6、(A,B,C)中存在(A,B)→C但不存在B→C或A→C,则(A,B)→C为函数依赖。部分完全术语:传递函数依赖如果X→Y(非平凡函数依赖,并且YX)、Y→Z,则称Z传递函数依赖于X。如学号→专业,专业→院系,则:院系传递函数依赖于学号。举例:如果在关系模式R(A,B,C)中存在A→C且存在A→B,B→C,则A→C为函数依赖传递练习已知关系模式:学生(学号,姓名,院系,负责人),判断下列函数依赖的类型?学号→姓名学号→院系学号→负责人6.1.4函数依赖的逻辑蕴涵1.逻辑蕴涵函数逻辑蕴涵的定义:设有关系模式R(U,F),XU、YU,如果从F中的函数依赖能够推导出X→Y,则称F逻辑蕴涵X
7、→Y,或称X→Y是F的逻辑蕴涵。例如有关系模式R(U,F),U={A,B,C},F={A→B,B→C},问A→C是否成立?2.推理规则设有关系模式R(U,F),X、Y、Z均为U的子集,有如下推理规则:自反律:如果YX,则X→Y;增广律:如果X→Y,则XZ→YZ;传递律:如果X→Y、Y→Z,则X→Z。以上推理规则还有如下3条推论:合并规则:如果X→Y、X→Z,则X→YZ。分解规则:如果X→YZ,则X→Y、X→Z。伪传递规则:如果X→Y、YW→Z,则XW→Z。