关系数据库
- 关系数据结构
- 关系
- 域:一组具有相同数据类型的集合。
- 元组:给定一组域 , 中的元素 称为 元组。
- 分量:元组中的每一个 。
- 关系: 的子集,记作 。
- 属性:关系中每一个分量的名字。
- 键:可以唯一标识关系中的元组的属性或属性组。
- 候选键:任意真子集不是键的键。
- 主属性:组成候选键的元素。
- 全键:所有属性组成的键。
- 关系完整性
- 实体完整性
- 主属性不能取空值,并且唯一。
- 参照完整性
- 已知 ,且 与 对应,则 是 的外键, 是参照关系, 是被参照关系。
- 和 必须是同一个域, 和 可以是同一个关系。
- 的取值必须是 中某个 的取值,或是空值。
- 用户定义完整性
- 用户根据具体需求定义的约束。
- 关系模型提供检验的机制,不需要应用程序检验。
- 实体完整性
- 关系
- 关系代数
- 传统集合运算
- 参考集合中的内容。主要常用的有交、并、差、笛卡尔积。
- 选择
- 已知关系 ,元组 ,规定:
- 表示 中对应 的分量。
- 若 ,则 表示 中 中所有属性对应的分量
- 定义 的选择为在 中选择满足谓词 的元组的集合,记作 。
- 已知关系 ,元组 ,规定:
- 投影
- 定义 的投影为在 中选择指定的属性集 组成的关系,记作 。
- 原关系中的元组在选择指定的属性后可能会重复,投影结果则不包含重复。
- 连接
- 已知元组 ,规定 表示两个元组拼接。
- 已知关系 、属性集 、谓词 ,定义连接为将 中所有符合条件的元组拼接的结果,条件是 满足的条件,记作 。
- 连接的一种特殊形式是等值连接:。
- 等值连接的一种特殊形式是自然连接: 中比较 中共同的属性集,并去除重复列。
- 除
- 已知关系 , 为属性集,定义除 为所有 满足
- 传统集合运算
- 设计
- 参考关系数据库设计。