数据库原理笔记(关系模型)
关系模型
以下内容整理自中国大学MOOC战德臣教授的数据库系统课程
知识结构
什么是关系模型
关系模型的三个要素
(1)基本结构:关系/表
(2)基本操作:(1)基本的:并、差、广义积、选择、投影(2)扩展的:交、连接、除
(3)完整性约束:实体完整性、参照完整性和用户自定义的完整性
关系模式的基本结构
关系/表
一个表可以称为一个关系,但表和关系也有细微的差别
表的结构
表的严格定义
列的定义
列的取值范围定义为域(Domain),域是一组值的集合,有相同的数据类型。集合元素的个数被称为域的基数
行/元组的定义
关系的定义
关系模式与关系
关系操作
关系代数
集合操作和纯关系操作:
关系代数运算的约束
并相容性
关系代数的基本操作
并
差
广义笛卡儿积
选择
投影
交
θ-连接
等值连接
自然连接
除
外连接
外连接的提出
外连接的定义
外连接的形式
关系模式的完整性
(1)实体完整性
关系的主码中的属性值不能为空值
意义:关系中的元组对应到现实世界相互可区分的个体,这些个体是由主码来标识的,如果主码为空,那么会出现无法标识的个体,这是不被允许的。
空值的含义:不知道、不存在或者无意义的值。关系模型中用’?'来表征。
数据库中有了空值,会影响许多方面,如影响聚集函数运算的正确性,不能参与算术、比较或者逻辑运算等
(2)参照完整性
如果关系R1的外码Fk和关系R2的主码Pk相对应,那么R1中每一个元组的Fk值要么与Pk对应,要么为空值。也就是说外码可以取空值,也可以取所对应关系主码的值,但是不能出现其他的情况。
(3)用户自定义完整性
用户针对具体的应用环境定义的完整性约束条件,比如说性别的属性值只能是男或者女,不能是其他的性别。
DBMS对关系完整性的支持