第二章关系数据库
- 2.1 关系模型概述(略)
- 2.2 关系操作
- 2.2.1_基本关系操作
- 2.2.2_关系数据库语言的分类
- 2.3 关系的完整性
- 2.3.1_关系的三类完整性约束
- 2.3.2_实体完整性
- 2.3.3_参照完整性
- 2.3.4_用户定义的完整性
- 2.4 关系代数
- 2.4.1_传统的集合运算
- 2.4.2_专门的关系运算
2.1 关系模型概述(略)
2.2 关系操作
2.2.1_基本关系操作
关系模型中常用的关系操作包括两大部分——查询操作和更新操作(插入、删除、修改)
其中,查询操作的5种基本操作是选择、投影、并、差、笛卡尔积
2.2.2_关系数据库语言的分类
早期的关系操作能力通常用代数方式或逻辑方式来表示,分别称为关系代数和关系演算(演算不用了解),而sql语言是介于前两者之间的结构化查询语言。
2.3 关系的完整性
2.3.1_关系的三类完整性约束
关系模型中有三类完整性约束:实体完整性、参照完整性和用户定义的完整性;
实体完整性和参照完整性是关系模型必须满足的完整性约束条件称为关系的两个不变性
2.3.2_实体完整性
实体完整性规则的说明:
(1) 实体完整性规则是针对基本关系而言的。一个基本表通常对应现实世界的一个实体集。
(2) 现实世界中的实体是可区分的,即它们具有某种唯一性标识。
(3) 关系模型中以主码作为唯一性标识。
(4) 主码中的属性即主属性不能取空值。主属性取空值,就说明存在某个不可标识的实体,即存在不可区分的实体,这与第(2)点相矛盾,因此这个规则称为实体完整性
2.3.3_参照完整性
参照完整性规则:
若属性(或属性组)F是基本关系R的外码它与基本关系S的主码Ks相对应(基本关系R和S不一定是不同的关系),则对于R中每个元组在F上的值必须为:
1.或者取空值(F的每个属性值均为空值)
2.或者等于S中某个元组的主码值
2.3.4_用户定义的完整性
例: 课程(课程号,课程名,学分)
“学分”属性只能取值{1,2,3,4}
2.4 关系代数
2.4.1_传统的集合运算
2.4.2_专门的关系运算
1. 选择
2. 投影
3. 连接
等值连接:把属性值相同的元组连接
自然连接:自然连接是一种特殊的等值连接,两个关系中进行比较的分量必须是相同的属性组,在结果中把重复的属性列去掉(与等值连接不同之处)
一般连接:略
- 除