数据库系统概论 - 第二章 - 关系数据库
第二章 关系数据库
2.1 关系数据结构及形式化定义
2.1.1 关系
- 单一的数据结构 —— 关系
- 逻辑结构 —— 二维表
- 关系模型是建立在集合代数的基础上的。
1.域
- 域是一组具有相同数据类型的值的集合
2.笛卡尔积(重点)
- 域上的一种集合运算,所有域的所有取值的一个组合。
- (详看书本p38`39)
元组
- 笛卡尔积中每一个元素(d1,d2,.....dn)称作一个n元组。
分量
- 笛卡尔积元素(d1,d2,......dn)中的每一个值di称为一个分量。
3.关系
- 表示为:
R(D1,D2.....Dn)
- R表示关系名,n表示关系 目 或 度。
元组
- 关系中的每个元素是关系中的元组,通常用 t 表示。
单元关系与二元关系
- n=1时,为单元关系
- n=2时,为二元关系
关系的表示
- 关系也是一个二维表,每行对应一个元组,每列对应一个域,一个属性。
属性
- 关系中不同列可以对应相同的域,为了加以区分,需对每列起名,称为属性。
- n目关系必有n个属性。
码
- 候选码
- 全码
- 主码
- 主属性
- 非主属性
三类关系
- 基本关系(基本表):实际存在的表,是实际存储数据的逻辑表示。
- 查询表:查询结果对应的表。
- 视图表:虚表,是由基本表或其他视图表导出的表。不对应实际存储数据。
基本关系的性质(六点)
- 列是同质的;
- 不同的列可出自同一个域,不同的属性要给予不同属性名。;
- 列的次序可以任意交换;
- 任意两个元组的候选码不能相同;
- 行的次序可以任意交换;
- 分量必须取原子值。(规范条件中最基本的一条)
2.1.2 关系模式
- 关系模式是对关系的描述。关系模式是值,关系是值。
- 元组集合的结构:属性构成,属性来自的域,属性与域之间的映像关系。
- 一个关系通常由赋予它的元组语义确定。
- 现实的世界中还存在着完整性约束。
定义关系模式(表达方式)(了解即可)
R(U,D,DOM,F)
- R :关系名
- U :组成该关系的属性名集合
- D:属性组U在属性所以来自的域
- DOM :属性向域的映像集合
- F:属性间的数据依赖关系集合
关系模式与关系
- 关系模式是静态的,稳定的。
- 关系是动态的,不断变化的。关系是关系模式在某一时刻的状态和内容。
2.1.3 关系数据库
- 在一个给定的应用领域中,所有关系的集合构成一个关系数据库。
- 关系数据库的型与值 :型——又称关系数据库模式,是对关系数据库的描述。 值——是这些关系模式在某一时刻对应的关系的集合。简称关系数据库。
2.2 关系操作
2.2.1 常用的关系操作
- 查询:选择,投影,并,差,笛卡尔积(更多看书P43)
- 数据更新:插入,删除,修改
关系操作的特点
- 集合操作方式:操作的对象和结果都是集合,一次一集合的方式。
2.2.2关系数据库语言的分类(前两个主要是理论研究,而SQL是实际应用)
关系代数语言
- 用对关系的运算来表达查询要求。代表:ISBL。
关系演算语言
- 用谓词来表达查询要求。
- 元组关系演算语言:APLHA,QUEL
- 域关系演算语言:QBE
具有关系代数和关系演算的双重特点的语言
- SQL
2.3 关系的完整性
- 实体完整性,参照完整性,用户定义的完整性
- 实体和参照完整性是关系模型必须满足的完整性约束条件。(关系的两个不变性)
2.3.1 实体完整性
- 如果属性A是基本关系R的主属性,则A不能取空值。
实体完整性的规则说明:
- 规则是针对基本而言的,一个基本表对应现实的一个实体集。
- 实体是可区分的,具有唯一标识。
- 关系模型中以主码作为唯一标识。
- 主属性不能取空值。
参照完整性
- 在关系模型中实体与实体之间的联系都是用关系来描述的,自然存在着关系与关系间的引用。
- 外码:设F是基本关系R的一个(组)属性,但不是关系R的码,Ks是基本关系S的主码。如果F与Ks相对应,则称F是R的外码。(基本关系R为参照关系,基本关系S称为被参照关系)
参照完整性规则:
- R中每个元组在F上的值必须为:
- 或者取空值(F的每个属性值均为空值)
- 或者等于S中某个元组的主码值
2.3.3 用户定义的完整性
- 由用户根据需求定义的完整性。不用由应用程序承担这一功能。
2.4 关系代数
2.4.1 传统的集合运算
2.4.2 专门的关系运算
- 专门的关系运算包括:选择,投影,连接,除运算。
- (详细的运算过程看书P50~57)
2.5 关系演算(本科生阶段了解即可)
2.5.1 元组关系演算语言ALPHA
- ALPHA 主要有GET,PUT,HOLD,UPDATE,DROP 六条语句。
- 语句的基本格式:操作语句 工作空间名(表达式):操作条件
- 例:简单检索(查询被选修的课程号码)
- GET W (SC.Cno)
Comments | NOTHING