关系模型基本概念
关系模型研究什么?
关系模型就是处理Table的,它有三部分组成,表的描述,表与表之间可能发生的操作,操作所要遵循的约束条件
关系模型的三个要素
- 基本结构: 表
- 基本操作:并,差,乘积,选择,投影,交,连接,除
- 完整性约数: 实体完整性,参照完整性和用户自定义的完整性
什么是关系?
笛卡尔积中具有某一方面意义的那些元组被称为一个关系(Relation)
什么是候选码?
关系中的一个属性组,其值能唯一标识一个元组,若从该属性组中去掉任何一个属性,它就不具有这一性质了,这样的属性组称作候选码
主码
当有多个候选码时,可以选定一个为住吗,DBMS以主码为主要线索管理关系中的各个元组
主属性和非主属性
包含在任何一个候选码中的属性被称为主属性,而其他属性被称为非主属性
外码/外键
关系R中的一个属性组,它不是R的候选码,但它与另一个关系S的候选码相对应,则称这个属性组为R的外码或外键
关系模型的完整性
- 实体完整性:关系的主码中属性值不能为空
- 参照完整性:如果关系R1的外码FK与关系R2的主码Pk相对应,则R1中每一个元组的FK值或者等于R2中某个元组的PK值,或者为空值
- 用户自定义完整性:用户针对具体的应用环境定义的完整性约束条件
关系代数
什么是关系代数?
- 基于集合,提供了一系列的关系代数操作,并,差,笛卡尔积,选择,投影,更名等
- 关系代数操作以一个或多个关系为输入,结果是一个新的关系
- 用对关系的运算来表达查询,需要指明所用操作,具有一定的过程性
并(Union)操作
并运算是将两个关系的元组合并成一个关系,在合并时去掉重复的元组
差(Difference)操作
R-S,是出现在R但不出现在S中的元组构成
笛卡尔积操作
R ×S,由关系R中的元组与关系S中的元组进行所有可能的拼接构成
选择(select)
从关系中选择处满足给定条件condition的元组
投影
从关系中选出属性包含在A中的列构成
连接
先进行笛卡尔积操作,然后根据条件theta进行筛选