数据库原理及应用 ——“十一五”
国家级规划教材 1
第 2章 关系数据库理论基础
本章重点内容
关系的数学定义和性质
关系模式的完整性约束条件
关系代数
关系的规范化原则,范式的基本概念和分解方法数据库原理及应用 ——“十一五”
国家级规划教材 2
2.1 关系的基本概念
2.1.1 关系的数学定义
1.域( Domain)
域:是一组具有相同数据类型的值集合。例如:
{自然数 },{男,女 },{0,1}等都可以是域。
基数:域中数据的个数称为域的基数。
域被命名后用如下方法表示:
D1 = {白亚春,陈韬,王雪莲 },表示姓名的集合,基数是 3;
D2 = {计算机系,电子系 }
数据库原理及应用 ——“十一五”
国家级规划教材 3
2,笛卡尔积 ( Cartesian Product)
给定一组域 D1,D2,…,Di,…,Dn( 可以有相同的域 ),则笛卡尔积定义为:
D1D2… Di… Dn = {( d1,d2,…,di,…,dn) ∣ di∈ Di,
i = 1,2,…,n}
D1D2 = {( 陈韬,计算机系 ),( 陈韬,电子系 ),
( 王雪莲,计算机系 ),( 王雪莲,电子系 ),( 白亚春,计算机系 ),( 白亚春,电子系 ) }
其中每个 ( d1,d2,…,di,…,dn) 叫做 元组,元组中的每一个值 di叫做 分量,di必须是 Di中的一个值 。
显然,笛卡尔积的基数就是构成该积所有域的基数累乘积,若 Di( i = 1,2,…,n) 为有限集合,其基数为 mi(i
= 1,2,…,n),则 D1D2… Di… Dn笛卡尔积的基数 M为:
n
i
imM
1
数据库原理及应用 ——“十一五”
国家级规划教材 4
该笛卡尔积的基数是 M = m1m2 = 3*2 = 6,
即该笛卡尔积共有 6个元组,它可组成一张二维表姓名 籍贯陈韬 计算机系陈韬 电子系王雪莲 计算机系王雪莲 电子系白亚春 计算机系白亚春 电子系数据库原理及应用 ——“十一五”
国家级规划教材 5
3,关系 ( Relation)
关系:笛卡尔积 D1D2… Di… Dn的子集 R称作在域 D1,D2,…,Dn上的关系,记作:
R( D1,D2,…,Di,…,Dn)
其 中,R 为 关 系 名,n 为 关 系 的 度 或 目
( Degree),Di是域组中的第 i个域名,
当 n = 1 时,称该关系为单元关系;
当 n = 2 时,称该关系为二元关系;
以此类推,关系中有 n个域,称该关系为 n元关系 。
把列称为属性( Attribute)。 一般来说,一个取自笛卡尔积的子集才有意义。
数据库原理及应用 ——“十一五”
国家级规划教材 6
关系可以分为三种类型:
基本关系 ( 又称基本表 ),是实际存在的表,
它是实际存储数据的逻辑表示;
查询表:是对基本表进行查询后得到的结果表;
视图表:是由基本表或其它视图导出的表,
是一个虚表,不对应实际存储的数据。
姓名 籍贯陈韬 计算机系王雪莲 电子系白亚春 计算机系数据库原理及应用 ——“十一五”
国家级规划教材 7
2.1.2 关系的性质
1.列是同质的。
2.关系中行的顺序、列的顺序可以任意互换,不会改变关系的意义。
学号 姓名 性别 出生日期 所在系
0022102 王雪莲 女 1980-9-15 电子系计算机系 白亚春 男 1981-1-25 0051309
0052201 陈韬 男 计算机系 1981-5-6
0052217 袁更旭 男 1980-12-8 计算机系数据库原理及应用 ——“十一五”
国家级规划教材 8
3.关系中的任意两个元组不能相同。
4、关系中的元组分量具有原子性,即每一个分量都必须是不可分的数据项。
学号 姓名 性别 出生日期 所在系
0022102 王雪莲 女 1980-9-15 电子系
0051309 白亚春 男 1981-1-25 计算机系
0051309 白亚春 男 1981-1-25 计算机系
0052217 袁更旭 男 1980-12-8 计算机系数据库原理及应用 ——“十一五”
国家级规划教材 9
2.2 关系的完整性
2.2.1 键
1,候选键 ( Candidate key)
若关系中的某一属性组的值能惟一地标识一个元组,则称该属性组为候选键 。
2,主键 ( Primary key)
若一个关系中有多个候选键,则选定一个为主键 。
数据库原理及应用 ——“十一五”
国家级规划教材 10
3,主属性 ( Primary Attribute)
主键的属性称为主属性 。
4,外键 ( Foreign key)
设 F是基本关系 R的一个或一组属性,但不是 R的键(主键或候选键),如果 F与基本关系 S的主键 K相对应,则称 F是 R的外键,
并称 R为参照关系,S为被参照关系。
2.2 关系的完整性数据库原理及应用 ——“十一五”
国家级规划教材 11
学号 姓名 性别 出生日期 所在系
0022102 王雪莲 女 1980-9-15 电子系
0051309 白亚春 男 1981-1-25 计算机系
0052201 陈韬 男 1981-5-6 计算机系
0052217 袁更旭 男 1980-12-8 计算机系课程号 学号 成绩
C201 0022102 75
C505 0051309 95
C508 0052201 92
C506 0052217 80
数据库原理及应用 ——“十一五”
国家级规划教材 12
2.2.2 实体完整性
实体完整性规则:关系中的主键不能为空值( Null)。 空值就是“不知道”或
“无意义”
2.2.3 参照完整性
参照完整性规则:表的外键必须是另一个表主键的有效值,或者是空值。
2.2 关系的完整性数据库原理及应用 ——“十一五”
国家级规划教材 13
学号 姓名 性别 出生日期 所在系
0022102 王雪莲 女 1980-9-15 电子系
0051309 白亚春 男 1981-1-25 计算机系
0052201 陈韬 男 1981-5-6 计算机系
0052217 袁更旭 男 1980-12-8 计算机系课程号 学号 成绩
C201 0022102 75
C505 0051309 95
C508 A102869 92
C506 0052217 80
实体完整性和参照完整性实例数据库原理及应用 ——“十一五”
国家级规划教材 14
2.2.4 用户定义完整性
用户按照实际的数据库运行环境要求,
对关系中的数据所定义的约束条件,它反映的是某一具体应用所涉及的数据必须要满足的条件。
2.2 关系的完整性数据库原理及应用 ——“十一五”
国家级规划教材 15
2.3 关系代数
2.3.1 传统的集合运算
当集合运算并,交,差用于关系时,要求参与运算的两个关系必须时相容的,
即两个关系的度数一致,并且关系属性的性质必须一致 。
数据库原理及应用 ——“十一五”
国家级规划教材 16
1,并
并,是将两个关系中的所有元组构成新的关系,并运算的结果中必须消除重复值。 关系 R与 S的并运算记作:
R∪ S。
学号 姓名 性别 出生日期 所在系
0022101 何芊 女 1982-6-5 电子系
0022102 王雪莲 女 1980-9-15 电子系
0022201 叶媛媛 女 1982-3-5 电子系
0051309 白亚春 男 1981-1-25 计算机系
0052201 陈韬 男 1981-5-6 计算机系
0052217 袁更旭 男 1980-12-8 计算机系数据库原理及应用 ——“十一五”
国家级规划教材 17
2,交
交:将两个关系中的公共元组构成新的关系。 关系 R与 S的交运算记作,R∩ S。
学号 姓名 性别 出生日期 所在系
0051309 白亚春 男 1981-1-25 计算机系
0052217 袁更旭 男 1980-12-8 计算机系数据库原理及应用 ——“十一五”
国家级规划教材 18
3,差
差:运算结果是由属于一个关系并且不属于另一个关系的元组构成的新关系,就是从一个关系中减去另一个关系。关系 R与 S的差运算记作,R- S。
学号 姓名 性别 出生日期 所在系
0022102 王雪莲 女 1980-9-15 电子系
0052201 陈韬 男 1981-5-6 计算机系数据库原理及应用 ——“十一五”
国家级规划教材 19
2.3.2 专门的关系运算
专门的关系运算包括:选择,投影和连接,用于数据查询服务 。
1,选择 ( Selection)
选择:是按照给定条件从指定的关系中挑选出满足条件的元组构成新的关系 。或者说,选择运算的结果是一个表的行的子集。记作 )( R
条件表达式?
学号 姓名 性别 出生日期 所在系
0051309 白亚春 男 1981-1-25 计算机系
0052201 陈韬 男 1981-5-6 计算机系
0052217 袁更旭 男 1980-12-8 计算机系
)( R 所在系=“计算机系”?
数据库原理及应用 ——“十一五”
国家级规划教材 20
2,投影 ( Projection)
投影:是从指定的关系中挑选出某些属性构成新的关系 。或者说,选择运算的结果是一个表的列的子集。
记作,
其中 A为 R的属性列。投影的结果将取消由于取消了某些列而产生的重复元组。
)(RA?
)( R学号、姓名、性别?
学号 姓名 性别
0022102 王雪莲 女
0051309 白亚春 男
0052201 陈韬 男
0052217 袁更旭 男数据库原理及应用 ——“十一五”
国家级规划教材 21
3,连接 ( Join)
连接:是将两个和多个关系连接在一起,形成一个新的关系。连接运算是按照给定条件,
把满足条件的各关系的所有元组,按照一切可能组合成新的关系。或者说,连接运算的结果是在两关系的笛卡尔积上的选择。记作,
自然连接:当连接的两关系有相同的属性名时,称这种连接为自然连接,它是连接的一个特例。记作:
数据库原理及应用 ——“十一五”
国家级规划教材 22
学号 姓名 性别 出生日期 所在系 课程号 成绩
0022102 王雪莲 女 1980-9-15 电子系 C201 75
0051309 白亚春 男 1981-1-25 计算机系 C505 95
0052201 陈韬 男 1981-5-6 计算机系 C508 92
0052217 袁更旭 男 1980-12-8 计算机系 C506 80
学生基本情况表 学生选课表数据库原理及应用 ——“十一五”
国家级规划教材 23
2.4 关系规范化
2.4.1 问题的提出
在设计关系数据库时,经常采用一种自下而上的设计方法。
这种方法是对涉及的所有数据进行收集,然后按照栏目进行归纳分类。
插入异常,如果某个教师的所开课程某学期没有,或者学生没有选修他开的该课程,那么就无法将该教师及其所开课程的信息存入数据库 。
删除异常,如果某届学生全部毕业,在删除该系学生时会将课程及相关教师删除 。
数据冗余,比如,一门课程及其教师要与选修该课程的每一个学生出现的次数一样多
解决这些问题的办法就是重新设计数据库。
数据库原理及应用 ——“十一五”
国家级规划教材 24
学号 姓名 性别出生日期所在系课程名称成绩课程教师职称
0052
201
陈韬 男 1981-
5-6
计算机系数据库技术
90 陈刚 副教授
0052
201
陈韬 男 1981-
5-6
计算机系操作系统
85 温翠灵讲师
0052
201
陈韬 男 1981-
5-6
计算机系
C语言 75 陈刚 副教授
0051
309
白亚春男 1981-
1-25
计算机系数据库技术
95 陈刚 副教授
0051
309
白亚春男 1981-
1-25
计算机系操作系统
88 温翠灵讲师
0051
309
白亚春男 1981-
1-25
计算机系编译技术
85 李建义讲师数据库原理及应用 ——“十一五”
国家级规划教材 25
2.4.2 关系模式的规范化
1,范式 ( Normal form)
范式:建立关系时需要满足的约束条件划分成若干标准,这些标准称为范式,简写为 NF。
范式的级别越高,发生操作异常的可能性越小,数据冗余越小,但由于关联多,读取数据时花费时间也会相应增加 。
2,第一范式 ( 1NF)
对于给定的关系 R,如果 R中的所有行,列交点处的值都是不可再分的数据项,则称关系 R
属于第一范式,记作,R∈ 1NF。
1NF是关系数据库中对关系的最低要求,它是从关系的基本性质而来的,任何关系必须遵守 。
数据库原理及应用 ——“十一五”
国家级规划教材 26
3,第二范式 ( 2NF)
如果关系 R∈ 1NF,并且 R的每一个非主属性都决定于主键,则称 R属于第二范式,记作:
R∈ 2NF。
思考:主键没有冗余,非主键存在冗余 。
3,第三范式 ( 3NF)
第三范式:如果关系 R∈ 2NF,并且 R的每一个非主属性都不间接决定于主键,则称 R属于第三范式,记作,R∈ 3NF。
达到第三范式的关系仍有可能存在冗余等问题,所以关系数据库理论还有 BCNF,4NF、
5NF等范式。在实际应用中,一般达到了 3NF
的关系就可以认为是较为优化的关系。
数据库原理及应用 ——“十一五”
国家级规划教材 27
2.4.3 关系分解的原则
关系的规范化就是将关系按照一定的原则不断地分解为多个关系的过程,通过分解使关系逐步达到较高范式 。 任何一个非规范化的关系经过分解都可以达到 3NF。
在实际应用中,数据库设计人员应根据具体情况灵活掌握,千万不要盲目追求规范化的程度 。
关系分解的基本原则是:
1.关系分解后必须可以无损连接的。
2.分解后的关系要相互独立。
数据库原理及应用 ——“十一五”
国家级规划教材 28
本章小结
1.关系可以简单的理解为二维表。表中的列称为属性,
DBMS中称为列或字段,取自同一个域;行称为元组,
DBMS中称为行或记录,代表一个实体的值。关系的若干性质应该从二维表加以理解。
2.“关系完整性”:实体完整性、参照完整性、用户定义的完整性
关系运算:选择、投影和连接,是关系数据库的理论基础。
3.关系的规范化据库设计必须要考虑的问题。在关系数据库设计过程中,怎样建立各个关系,使系统既稳定又灵活,数据库既便于维护又利于使用是个重要问题,
设计满足范式的关系模式是经常采用的方法之一。掌握:第一范式( 1NF)、第二范式( 2NF)、第三范式
( 3NF)。