关系数据库原理(关系的完整性和规范化)讲解
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目的
用于保证给定字段中数据的有效性,即保证数据 的取值在有效的范围内。
一、关系的完整性规则
3.参照完整性规则(引用完整性规则)
规则要求:
“不引用不存在的实体”。即:不允许在一个 关系中引用另一个关系中不存在的元组。
目的
用于确保相关联的表间的数据保持一致。
一、关系的完整性规则
1.实体完整性规则 2.域完整性规则(用户定义完整性规则)
3.参照完整性规则(引用完整性规则)
一、关系的完整性规则
1.概念、类型 2.完全函数依赖 3.部分函数依赖(局部依赖)
4.传递函数依赖
二、函数依赖
1. 概念和范式的类型 2.第一范式(1NF) 3.第二范式(2NF) 4.第三范式(3NF)
定义
如果属性Y函数依赖于复合属性X,且不与X的任 何子集函数相依赖,则称“Y完全函数依赖于X”。
示例
有如下的关系模式:
生产(工厂编号,产品编号,计划数量)
“工厂编号+产品编号” →“计划数量”,是完全函 数依赖。
二、函数依赖 3.部分函数依赖(局部依赖)
定义
对于一个函数依赖:X→Y,如果存在Z∈X(Z属 于X),且有Z→Y成立,则称“Y部分函数依赖于 X”。
函数依赖的定义
给定一个关系模式R,X和Y都是R的属性或属性组,对于X的每 个确定值在任何时刻Y只有一个确定的值与之对应,则称“X 函数决定Y”,或称为“Y函数依赖于X”,X称为决定因素, 记为:X→Y。
函数依赖的类型
完全函数依赖
部分函数依赖
传递函数依赖
二、函数依赖 2.完全函数依赖
三、关系的规范化 2.第一范式(1NF)
第一范式可能存在的问题:
数据冗余:如各位老师的信息重复。
插入异常:如果要插入刘老师的个人信息,但刘老师未开 课,会造成缺关键字“学号”、“课程号”。
03001
姓名 马力刚 王萍华 王平 张华 李萍
性别 男 女 男 男 女
年龄 21 20 21 22 19
系编号 01 02 03 04 05
一、关系的完整性规则
2.域完整性规则(用户定义完整性规则)
规则要求
由用户根据实际情况,定义表中属性的取值范 围
例如:性别只能是男和女、年龄不能为负值、成绩 在0—100之间等。
5.各范式间的关系
三、关系的规范化
分析 与 解答
四、综合应用
概述 与 结论
本课小结
一、关系的完整性规则
定义
是对关系的某种约束条件。
目的
用于保证关系数据库中数据的正确性和可靠性。
类型
是关系模型必须满足 的完整性约束条件。
实体完整性规则
参照完整性规则(引用完整性规则 )
第1章 关系数据库原理
——关系的完整性和关系的规范化
复习
什么是关键字/码/键?
答:是能用来惟一标识元组的属性或属性组合。
什么是主关键字/主码/主键?
答:被指定为关键字的候选关键字,称为~。
ER图转化为关系模式的原则是什么?
答:(1)每个实体转换为一个关系。 (2)每个联系也转换成一个关系。 (3)有相同码的关系可以合并。
示例
有如下的关系模式
SCD(学号,姓名,课程号,成绩,系名,系主任) 主码为复合码:学号+课程号 “姓名、系名、系主任”与主码是部分函数依赖
二、函数依赖 4.传递函数依赖
定义
在关系模式中,如果X→Y(不能Y→X),Y→Z,若 存在X→Z ,则称“Z传递依赖于X”。
示例
有如下的关系模式 SD(学号,姓名,系名,系主任)
复习
关系应具备什么性质?
答:(1)关系中每一个属性值都是不可分解的。 (2)关系中不允许出现相同的行。 (3)关系中不允许出现相同的列。 (4)关系中没有行序、没有列序。
第1章 关系数据库原理
——关系的完整性规则、规范化
教学内容
1. 关系的完整性规则
实体完整性、参照完整性、域完整性
2. 函数依赖
“学号→系名,系名→系主任”,则系主任传递依赖于学号。
三、关系的规范化
引
在关系数据库的设计过程中,对于同一个问题,选 用不同的关系模式,其性能的优劣是大不相同的, 为了区分关系模式的优劣,人们常常把关系模式分 为各种不同等级的范式。
三、关系的规范化 1. 概念和范式的类型
类型
第一范式(1NF)
完全函数依赖、部分函数依赖、传递函数依 赖
3. 关系的规范化
第一范式、第二范式、第三范式
第1章 关系数据库原理
——关系的完整性规则、规范化
学习目标
认知目标:
理解关系的完整性规则 了解函数依赖、关系规范化的含义 理解三种范式的定义
能力目标:
能判别关系的范式类别 (重点、难来自百度文库) 能进行范式的分解(重点、难点)
01
03102 王萍华 女
20
03223 王平
男
21
05
说明
从表的“系编号(外键)”的取值只能为两种情况: 若取非空值,则它必须是主表中存在的值。 取空值(null)。表明尚未给学生分配专业。Null不等于0或空字符串。
二、函数依赖 1.概念、类型
函数依赖
是指关系中各属性或属性组之间的相互依赖关系。它是关系 规范化的理论基础。
域完整性规则(用户自定义完整性规则)
一、关系的完整性规则
1.实体完整性规则 规则要求:
在任何关系的任何一个元组中,主键的值不能为空 值、也不能取重复的值。
目的:用于保证数据库表中的每一个元组都是惟 一的。
请思考:下面的关系是否违反实体完整性规则?
学号 03001 03102 03223
3.参照完整性规则(引用完整性规则)
请思考:下面两个关系是否违反参照完整性规则?
系表(主表)
学生表(从表)
系编号 系名 系主任 办公室 电话
01 计算机 龚小勇 205 6003
02
通信 谭中华 207 6025
03
电子 袁 勇 210 6018
学号 姓名 性别 年龄 系编号
03001 马力刚 男
21
低
第二范式(2NF)
第三范式(3NF)……
高
关系规范化的概念
将低级范式转换为若干个高级范式过程。
三、关系的规范化 2.第一范式(1NF)
定义
如果关系模式R的所有属性的值域中第一个值都是不可再 分解值,则称R是属于1NF模式。
第一范式是对关系的最低要求。
示例:判断哪一张表是1NF?
用于保证给定字段中数据的有效性,即保证数据 的取值在有效的范围内。
一、关系的完整性规则
3.参照完整性规则(引用完整性规则)
规则要求:
“不引用不存在的实体”。即:不允许在一个 关系中引用另一个关系中不存在的元组。
目的
用于确保相关联的表间的数据保持一致。
一、关系的完整性规则
1.实体完整性规则 2.域完整性规则(用户定义完整性规则)
3.参照完整性规则(引用完整性规则)
一、关系的完整性规则
1.概念、类型 2.完全函数依赖 3.部分函数依赖(局部依赖)
4.传递函数依赖
二、函数依赖
1. 概念和范式的类型 2.第一范式(1NF) 3.第二范式(2NF) 4.第三范式(3NF)
定义
如果属性Y函数依赖于复合属性X,且不与X的任 何子集函数相依赖,则称“Y完全函数依赖于X”。
示例
有如下的关系模式:
生产(工厂编号,产品编号,计划数量)
“工厂编号+产品编号” →“计划数量”,是完全函 数依赖。
二、函数依赖 3.部分函数依赖(局部依赖)
定义
对于一个函数依赖:X→Y,如果存在Z∈X(Z属 于X),且有Z→Y成立,则称“Y部分函数依赖于 X”。
函数依赖的定义
给定一个关系模式R,X和Y都是R的属性或属性组,对于X的每 个确定值在任何时刻Y只有一个确定的值与之对应,则称“X 函数决定Y”,或称为“Y函数依赖于X”,X称为决定因素, 记为:X→Y。
函数依赖的类型
完全函数依赖
部分函数依赖
传递函数依赖
二、函数依赖 2.完全函数依赖
三、关系的规范化 2.第一范式(1NF)
第一范式可能存在的问题:
数据冗余:如各位老师的信息重复。
插入异常:如果要插入刘老师的个人信息,但刘老师未开 课,会造成缺关键字“学号”、“课程号”。
03001
姓名 马力刚 王萍华 王平 张华 李萍
性别 男 女 男 男 女
年龄 21 20 21 22 19
系编号 01 02 03 04 05
一、关系的完整性规则
2.域完整性规则(用户定义完整性规则)
规则要求
由用户根据实际情况,定义表中属性的取值范 围
例如:性别只能是男和女、年龄不能为负值、成绩 在0—100之间等。
5.各范式间的关系
三、关系的规范化
分析 与 解答
四、综合应用
概述 与 结论
本课小结
一、关系的完整性规则
定义
是对关系的某种约束条件。
目的
用于保证关系数据库中数据的正确性和可靠性。
类型
是关系模型必须满足 的完整性约束条件。
实体完整性规则
参照完整性规则(引用完整性规则 )
第1章 关系数据库原理
——关系的完整性和关系的规范化
复习
什么是关键字/码/键?
答:是能用来惟一标识元组的属性或属性组合。
什么是主关键字/主码/主键?
答:被指定为关键字的候选关键字,称为~。
ER图转化为关系模式的原则是什么?
答:(1)每个实体转换为一个关系。 (2)每个联系也转换成一个关系。 (3)有相同码的关系可以合并。
示例
有如下的关系模式
SCD(学号,姓名,课程号,成绩,系名,系主任) 主码为复合码:学号+课程号 “姓名、系名、系主任”与主码是部分函数依赖
二、函数依赖 4.传递函数依赖
定义
在关系模式中,如果X→Y(不能Y→X),Y→Z,若 存在X→Z ,则称“Z传递依赖于X”。
示例
有如下的关系模式 SD(学号,姓名,系名,系主任)
复习
关系应具备什么性质?
答:(1)关系中每一个属性值都是不可分解的。 (2)关系中不允许出现相同的行。 (3)关系中不允许出现相同的列。 (4)关系中没有行序、没有列序。
第1章 关系数据库原理
——关系的完整性规则、规范化
教学内容
1. 关系的完整性规则
实体完整性、参照完整性、域完整性
2. 函数依赖
“学号→系名,系名→系主任”,则系主任传递依赖于学号。
三、关系的规范化
引
在关系数据库的设计过程中,对于同一个问题,选 用不同的关系模式,其性能的优劣是大不相同的, 为了区分关系模式的优劣,人们常常把关系模式分 为各种不同等级的范式。
三、关系的规范化 1. 概念和范式的类型
类型
第一范式(1NF)
完全函数依赖、部分函数依赖、传递函数依 赖
3. 关系的规范化
第一范式、第二范式、第三范式
第1章 关系数据库原理
——关系的完整性规则、规范化
学习目标
认知目标:
理解关系的完整性规则 了解函数依赖、关系规范化的含义 理解三种范式的定义
能力目标:
能判别关系的范式类别 (重点、难来自百度文库) 能进行范式的分解(重点、难点)
01
03102 王萍华 女
20
03223 王平
男
21
05
说明
从表的“系编号(外键)”的取值只能为两种情况: 若取非空值,则它必须是主表中存在的值。 取空值(null)。表明尚未给学生分配专业。Null不等于0或空字符串。
二、函数依赖 1.概念、类型
函数依赖
是指关系中各属性或属性组之间的相互依赖关系。它是关系 规范化的理论基础。
域完整性规则(用户自定义完整性规则)
一、关系的完整性规则
1.实体完整性规则 规则要求:
在任何关系的任何一个元组中,主键的值不能为空 值、也不能取重复的值。
目的:用于保证数据库表中的每一个元组都是惟 一的。
请思考:下面的关系是否违反实体完整性规则?
学号 03001 03102 03223
3.参照完整性规则(引用完整性规则)
请思考:下面两个关系是否违反参照完整性规则?
系表(主表)
学生表(从表)
系编号 系名 系主任 办公室 电话
01 计算机 龚小勇 205 6003
02
通信 谭中华 207 6025
03
电子 袁 勇 210 6018
学号 姓名 性别 年龄 系编号
03001 马力刚 男
21
低
第二范式(2NF)
第三范式(3NF)……
高
关系规范化的概念
将低级范式转换为若干个高级范式过程。
三、关系的规范化 2.第一范式(1NF)
定义
如果关系模式R的所有属性的值域中第一个值都是不可再 分解值,则称R是属于1NF模式。
第一范式是对关系的最低要求。
示例:判断哪一张表是1NF?