数据库复习——2、关系数据库

2019-04-14 17:26发布

关系数据库由关系数据结构、关系操作集合和完整性约束组成。 关系模型的数据结构只包含关系。

域:

具有相同数据类型值的集合

笛卡尔积:

集合运算

关系:

关系是笛卡尔积的有限子集,关系也是一个二维表。

属性:

对每列起一个名字,称为属性

候选码:

关系中能唯一标识元组的属性组称为候选码

主属性:

候选码的属性称为主属性

主码:

选一个候选码作为主码

全码:

所有属性都是候选码,称为全码

关系的三种类型:

基本表(基本关系)、查询表、视图表

基本关系

6个性质:

1、 列是同质的。(同一类型)
2、 不同列可以出自同一域。
3、 列的次序可交换。
4、 任意两个元组的候选码不能相同。
5、 行的次序可交换。
6、 每个分量都是不可分的数据项,不允许表中有表 规范化的关系称为范式
关系模式是对关系的描述
关系是一张二维表,表的一行为元组,一列为属性。

关系模式

R(U,D,DOM,F)
R是关系名
U是属性名集合
D是属性来自的域
DOM是属性向域的映像集合
F是属性间数据依赖关系集合

关系操作

基本的关系操作
两类操作:
查询操作、增删改操作
查询操作包括:
选择、投影、连接、除、并、差、交、笛卡尔积 关系操作的特点是集合操作方式,操作对象和结果都是集合。

关系数据语言的分类

关系数据语言包括:关系代数语言、关系演算语言和双重特点语言(SQL)
SQL有双重特点,是数据库标准语言。

关系的完整性

三类完整性约束
实体完整性、参照完整性和用户定义的完整性 实体完整性
基本关系的主码不能为空值。 参照完整性
若属性F是基本关系R的外码,它对应S中的主码,则R 中每个元组在F上的值必须为:或者取空值、或者等于S中某个元组的的主码值。 用户定义的完整性
例如:某个属性必须取唯一值,或者某个非主属性也不能取空值

关系代数

集合运算
并、差、交、笛卡尔积
关系运算 1、选择(Selection) 从行操作
在关系R中选择满足给定条件的诸元组 2、投影(Projection) 从列操作
关系R上的投影是从R中选择出若干属性组成新关系 3、连接(Join) 一般从行进行运算
从两个关系的笛卡尔积中选取满足一定条件的元组 等值连接
“=”的连接运算 自然连接
特殊的等值连接,要求两个关系进行比较的分量必须是相同的属性组,在结构中把重复属性列删掉,只保留一份 外连接
把舍弃的元组也保留在自然连接的基础上,其他属性填空值(NULL),这种连接叫外连接。
对于R×S
左外连接:保留R中被舍弃的元组
右外连接:保留S中被舍弃的元组 4、除运算(Division) 同时从行列出发
涉及到求“全部”之类的查询,一般用除法 关系运算的优先级:
投影
选择
笛卡尔积
连接、除

并、差