数据库复习-4.关系数据库
关系
本部分主要讲解域、笛卡尔积、关系等概念。
单一的数据结构–关系:
现实世界的实体以及实体间的各种练习均用关系来表示。
逻辑结构–二维表:
从用户角度(外模式),关系模型中数据 的逻辑结构是一张二维表。
关系是建立在集合代数的基础上。
域(Domain)
域是一组具有相同数据类型的值的集合。
例如:整数
{ 1,2,3,4,5 }
{ 男,女 }
——域要命名
D1={1,2,3,4,5},表示年级的集合
D2= { 男,女 },表示性别的集合
基数:域中数据的个数
笛卡尔积(Cartesian Product)
给定一组域D1,D2,…,Dn,这些域中可以有相同的。 D1 , D2 ,…,Dn的笛卡尔积为:
D1 × D2 ×…×Dn ={(d1,d2,…dn) | di ? Di, i=1,2,..,n }
其中 每一个元素(d1,d2,…dn) 叫作一个n元组或简称元组。
元素中的每一个值di 叫做一个分量。
若Di( i=1,2,..,n )为有限集,其基数(域中的数据的个数)为mi (i=1,2,..,n ), 则D1 × D2 ×…×Dn的基数M为:
n
M = ∏ mi (基数为构成该积所有域的基数累积)
i=1
笛卡尔积直观意义是诸集合各元素间一切可能的组合,可表示为一个二维表。
笛卡尔积直观意义是诸集合各元素间一切可能的组合,可表示为一个二维表。
关系(Relation)
D1×D2×…×Dn 的子集叫作在域D1,D2,…,Dn上的关系,表示为R(D1,D2,…,Dn)
其中R :关系的名字
Di :第i个域名(属性)
n :关系的目或度
当n=1:单元关系;当n=2:二元关系;以此类推…;n 目关系必有n个属性;
关系中的每一个元素是关系中的元组,通常用t表示。
关系是笛卡尔积的有限子集。
术语
若关系中的某一属性组的值能唯一地识别一个元组,则称该属性为候选码。
若一个关系有多个候选码,则选定其中一个作为主码。
候选码的诸属性称为主属性。
不包含在任何候选码中的属性称为非码属性。
若关系模式的所有属性组是这个关系模式的候选码,则称为全码。
关系的类型:
- 基本表:实际存储数据的逻辑表示。
- 查询表:查询结果对应的表。
- 视图表:是虚表,由基本表或其它视图表导出,不对应实际存储的数据。(只是信息)
关系作为关系数据模型的数据结构时,需给予以下限定和扩充:
1、无限关系在数据库系统中无意义
元组个数是无限的
限定关系数据模型中的关系必须是有限集合。
2、为关系的每个列附加一个属性名来取消元组的有序性
即(d1,d2,…,di,dj,…,dn)=(d1,d2,…, dj, di,…, dn) (i,j=1,2 ,…, n )
关系的基本性质
1. 列是同质的
每一列的分量是同一类型的数据,来自同一域。
2. 不同的列可出自同一域(即笛卡尔积定义中Di可以相同)
3. 列的顺序可以任意交换。
4. 任意两个元组的候选码不能完全相同。
5. 行的次序可以任意交换。
6. 分量必须取原子值。
关系模式
什么是关系模式
- 关系模式(Relation Schema)是型
- 关系是值
- 关系模式是对关系的描述
- 元组集合的结构
- 元组集合的结构