数据库原理笔记(关系模型)

关系模型

以下内容整理自中国大学MOOC战德臣教授的数据库系统课程

知识结构
数据库原理笔记(关系模型)
什么是关系模型
数据库原理笔记(关系模型)
关系模型的三个要素
(1)基本结构:关系/表
(2)基本操作:(1)基本的:并、差、广义积、选择、投影(2)扩展的:交、连接、除
(3)完整性约束:实体完整性、参照完整性和用户自定义的完整性

关系模式的基本结构

关系/表
一个表可以称为一个关系,但表和关系也有细微的差别

表的结构
数据库原理笔记(关系模型)
表的严格定义

列的定义
列的取值范围定义为域(Domain),域是一组值的集合,有相同的数据类型。集合元素的个数被称为域的基数

行/元组的定义
数据库原理笔记(关系模型)数据库原理笔记(关系模型)
关系的定义
数据库原理笔记(关系模型)
数据库原理笔记(关系模型)
关系模式与关系
数据库原理笔记(关系模型)

关系操作

数据库原理笔记(关系模型)
数据库原理笔记(关系模型)
数据库原理笔记(关系模型)

关系代数

集合操作和纯关系操作:
数据库原理笔记(关系模型)
数据库原理笔记(关系模型)
数据库原理笔记(关系模型)
关系代数运算的约束

并相容性
数据库原理笔记(关系模型)
关系代数的基本操作


数据库原理笔记(关系模型)

数据库原理笔记(关系模型)
广义笛卡儿积
数据库原理笔记(关系模型)
选择
数据库原理笔记(关系模型)
投影
数据库原理笔记(关系模型)

数据库原理笔记(关系模型)
θ-连接
数据库原理笔记(关系模型)
等值连接
数据库原理笔记(关系模型)
自然连接
数据库原理笔记(关系模型)

数据库原理笔记(关系模型)
数据库原理笔记(关系模型)
外连接

外连接的提出
数据库原理笔记(关系模型)
外连接的定义
数据库原理笔记(关系模型)
外连接的形式
数据库原理笔记(关系模型)

关系模式的完整性

(1)实体完整性
关系的主码中的属性值不能为空值
意义:关系中的元组对应到现实世界相互可区分的个体,这些个体是由主码来标识的,如果主码为空,那么会出现无法标识的个体,这是不被允许的。

空值的含义:不知道、不存在或者无意义的值。关系模型中用’?'来表征。
数据库中有了空值,会影响许多方面,如影响聚集函数运算的正确性,不能参与算术、比较或者逻辑运算等

(2)参照完整性
如果关系R1的外码Fk和关系R2的主码Pk相对应,那么R1中每一个元组的Fk值要么与Pk对应,要么为空值。也就是说外码可以取空值,也可以取所对应关系主码的值,但是不能出现其他的情况。

(3)用户自定义完整性
用户针对具体的应用环境定义的完整性约束条件,比如说性别的属性值只能是男或者女,不能是其他的性别。

DBMS对关系完整性的支持
数据库原理笔记(关系模型)