1
第 2 章 关系模型与关系代数
数学与计算科学学院
第2章 关系模型与关系代数
数
数
据
据
库
库
系
系
统
统
原
原
理
理
与
与
设
设
计
计
(
(
第
第
2
2
版
版
)
)
2
第 2 章 关系模型与关系代数
数学与计算科学学院
目 录
关系模型
2.1
关系代数
2.2
3
第 2 章 关系模型与关系代数
数学与计算科学学院
关系模型
系统而严格地提出关系模型的是美国IBM公司的
E.F.Codd
1970年提出关系数据模型
E.F.Codd, “A Relational Model of Data for Large Shared
Data Banks”, 《Communication of the ACM》,1970
关系数据库系统是支持关系数据模型的数据库系统。
关系数据库管理系统是当今的主流数据库管理系统。
关系模型由关系数据结构、关系操作集合和关系完整
性约束三部分组成。
4
第 2 章 关系模型与关系代数
数学与计算科学学院
关系数据结构
关系
关系模型的数据结构非常简单,它就是二维表,亦称为
关系 。
关系数据库是表的集合,即关系的集合。
表是一个实体集,一行就是一个实体,它由共同表示一
个实体的有关联的若干属性的值所构成。
由于一个表是这种有关联的值的集合(即行的集合),而
表这个概念和数学上的关系概念密切相关,因此称为关
系模型。
关系模型中,现实世界的实体以及实体间的各种联系都
是用关系来表示。
5
第 2 章 关系模型与关系代数
数学与计算科学学院
关系数据结构
关系数据结构的形式化定义
域——是一组具有相同数据类型的值的集合。
笛卡尔积
给定一组域D
1
, D
2
, …, D
n
,它们之中可以有相同的域。D
1
,
D
2
, …, D
n
的笛卡尔积为:
D
1
×D
2
×…×D
n
= {(d
1
, d
2
, …, d
n
)∣d
i
∈D
i
, i=1, 2, …, n}
其中,集合中的每一个元素(d
1
, d
2
, …, d
n
)称为一个n元组,
简称为元组;元素中的每一个值d
i
称为一个分量。
若D
i
(i=1, 2, …, n)为有限集,假设其基数为m
i
(i=1, 2, …,
n),则D
1
×D
2
×…×D
n
的基数M为:
举例:
给定两个域:
学生的姓名集合:D
1
= {‘李小勇’, ‘刘方晨’, ‘王红敏’}
课程的名称集合:D
2
= {‘数据库系统概论’, ‘操作系统’}
则D
1
, D
2
的笛卡尔积为:
D
1
×D
2
= { (‘李小勇’, ‘数据库系统概论’),
(‘李小勇’, ‘操作系统’),
(‘刘方晨’, ‘数据库系统概论’),
(‘刘方晨’, ‘操作系统’),
(‘王红敏’, ‘数据库系统概论’),
(‘王红敏’, ‘操作系统’) }