background image

 

第五章 关系数据库系统

 1 关系的形式定义
   

 

从数学的观点定义关系称为关系的形式定义。分为用集合论观点和用值域概念 关系是属

性值域笛卡尔积的一个子集。

 2 关系数据库对关系的限定
   1)每一个属性都是不可分解的。不允许表中有表;2)每一个关系仅仅有一种关系模式;
   3)每一个关系模式中的属性必须命名,属性名必须不同;4)行可交换;5)列可交换;6)不
出现相同两元组
5.2.3 关系数据库中常用的表示方法
 1)大写字母 Q、R、S 表示关系名
 2)小写字母 q、r、s 表示关系状态
 3)小写字母 t、u、v 表示元祖
 4)STUDENT(S#,Sname,Sex,Age,Dept)表示一个关系模式
 5)用带下划线的属性表示关系的主键
 6)R.A 表示用关系名 R 限定属性 A
 7)关系 r(R)中 n 元元祖 t 表示成 t=<v1,v2,…,vn>
   t[Ai]或 t.Ai 或 t[i]表示 t 中属性 Ai 的 vi 值
   t[Au,Aw,…,Az]或 t(Au,Aw,…,Az)
 8)一个长度为 n 的关系模式 R 可表示成 R(A1,A2 …

, ,

An)

 9)一个关系数据库模式 S 是他的关系模式和完整性 IC 的集合表示为 S={R1,R2,
…,Rn}
 10)一个关系数据库 S{R1,R2 …

, ,

Rn}的一个关系数据库状态 DB 是关系状态的集合

DB={r1,r2 …

, ,

rm}

5.3 关系模型的完整性约束
5.3.1 关系模型的完整性约束分类
  域完整性约束、实体完整性约束、参照完整性约束
5.3.2 域完整性约束
 是对属性值域的约束,包括静态定义和动态定义
5.3.3 实体完整性约束
 是对关系中主键属性值的约束
 实体完整行为规则:若属性 A 是关系 R 的主属性,则属性 A 不能取空值
则:

1)实体完整性约束是对关系的约束

2)每个关系必须有主键,且主键值唯一,用于标识关系的元祖
3)组成主键的属性值都不能为空
5.3.4 参照完整性约束
 参照完整性规则:若属性 F 是关系 R 的外键,他与关系 S 的主键 K 相对应,则对于 R 中
每一个元祖在

F 上的值必须为:1)或者取空值 2)或者等于 S 中某个元祖的属性值

5.3.5 关系模型数据完整性检查
 对数据库执行插入、删除、修改操作时需检查是否满足三种完整性要求
1 执行插入操作时,首先检查实体完整性;再检查参照完整性,若是向被参照关系插入,
不需考虑,若是 向 参 照关系插 入,插入 行在外键 属性 上 的 值是否 已 经 在相应 的被参
照关系的主键属性值中存在 ,若存在,可以插入,若不存在,不执行插入,或将插入行
在外键属性上的值改为空值,再执行插入;最后检查域完整性。
2 执行删除操作时,只考虑参照完整性,若删除被参照关系中的行, 检查被删除行在

第 2 页 共 3 页