文档介绍:第3章关系数据库的基本理论
主要内容
关系数据模型
关系模型的完整性规则
关系代数的基本运算
查询优化
11/15/2017
1
优秀课件,精彩无限!
本章重要概念
(1) 基本概念
关系数据模型,关键码(主键和外键),关系的定义和性质,三类完整性规则,ER模型到关系模型的转换规则,过程性语言与非过程性语言。
(2 ) 关系代数
五个基本操作,四个组合操作,七个扩充操作。
(3) 关系代数表达式的优化
关系代数表达式的等价及等价转换规则,启化式优化算法。
11/15/2017
2
优秀课件,精彩无限!
本章概要
本章先介绍关系模型的基本概念;然后主要介绍关系运算的三种理论之一:关系代数。
11/15/2017
3
优秀课件,精彩无限!
关系数据模型
主要内容
关系模式
关系操作
11/15/2017
4
优秀课件,精彩无限!
关系模式(1)
每个关系都有一个模式,称为关系模式(Relation Schema),由一个关系名及它的所有属性名构成。在关系模式中,字段称为属性,字段值称为属性值,记录类型称为关系模式。,关系模式名是R。记录称为元组(tuple),元组的集合称为关系(relation)或实例(instance)。一般用前面的大写英语字母A、B、C、…表示单个属性,用后面的大写字母…、W、X、Y、Z表示属性集,用小写字母表示属性值。
关系R
A
B
C
D
E
a1
b1
c1
d1
e1
a2
b2
c2
d2
e2
a3
b3
c3
d3
e3
数据库技术的术语关系模型的术语
字段,数据项属性
记录类型关系模式
记录1 元组1
记录2 元组2
记录3 元组3
字段值
属性值
文件
关系(或实例)
11/15/2017
5
优秀课件,精彩无限!
关系模式(2)
关系具有的特点:
⑴关系(表)可以看成是由行和列交叉组成的二维表格。它表示的是一个实体集合。
⑵表中一行称为一个元组,可用来表示实体集中的一个实体。
⑶表中的列称为属性,给每一列起一个名称即属性名,表中的属性名不能相同。
⑷列的取值范围称为域,同列具有相同的域,不同的列可有相同的域。例如,SEX的取值范围是{M(男),F(女)},AGE为整数域。
⑸表中任意两行(元组)不能相同。能惟一标识表中不同行的属性或属性组称为主键。
11/15/2017
6
优秀课件,精彩无限!
关系模式(3)
关系是一种规范化了的二维表格,具有如下性质:
属性值是原子的,不可分解。
没有重复元组。
没有行序。
理论上没有列序,但一般使用时都有列序。
关键码和表之间的联系
超键:在一个关系中,能惟一标识元组的属性或属性集称为关系的超键。
候选键:如果一个属性集能惟一标识元组,且又不含有多余的属性,那么这个属性集称为关系的候选键。
主键:若一个关系中有多个候选键,则选其中的一个为关系的主键。
外键:若一个关系R中包含有另一个关系S的主键所对应的属性组F,则称F为R的外键。并称关系S为参照关系,关系R为依赖关系。
11/15/2017
7
优秀课件,精彩无限!
关系模式(4)
例如,学生关系和系部关系分别为:
学生(SNO,SNAME,SEX,AGE,SDNO)
系部(SDNO,SDNAME,CHAIR)
学生关系的主键是SNO,系部关系的主键为SDNO,在学生关系中,SDNO是它的外键。更确切地说,SDNO是系部表的主键,将它作为外键放在学生表中,实现两个表之间的联系。在关系数据库中,表与表之间的联系就是通过公共属性实现的。我们约定,在主键的属性下面加下划线,在外键的属性下面加波浪线。
11/15/2017
8
优秀课件,精彩无限!
关系模式(5)
关系模式是对关系的描述,它包括模式名,组成该关系的诸属性名、值域名和模式的主键。
SNO
SNAME
AGE
SEX
SDEPT
S
C
CNO
CNAME
CDEPTE
TNAME
SC
M
N
GRADE
下图是一个教学模型的实体联系图。实体类型“学生”的属性SNO、SNAME、SEX、AGE、SDEPT分别表示学生的学号、姓名、性别、年龄和学生所在系部;实体类型“课程”AME、CDEPT、TNAME分别表示课程号、课程名、课程所属系和任课教师。学生用S表示,课程用C表示。S和C之间有M:N的联系(一个学生可选多门课程,一门课程可以被多个学生选修),联系类型SC的属性成绩用GRADE表示。右图表示的实体联系图(ER图)。
11/15/2017
9
优秀课件,精彩无限!
关系模式(6)
该图表示的学生情况的部