数据库原理与统计笔记-2.1关系数据结构及形式化定义

前言

有关数据库原理与统计的笔记,内容为书本的原文概括。

一、关系

关系模型的数据结构非常简单,只包含单一的数据结构——关系。在用户看来,关系模型中数据的逻辑结构是一张扁平的二维表。
关系模型是建立在集合代数的基础上的。

[1]. 域

域是一组具有相同数据类型的值的集合

[2]. 笛卡尔积

笛卡尔积是域上的一种集合运算
给定一组域D1,D2....Dn,该组域的笛卡尔积为D1xD2x.....xDn={(d1,d2,....,dn) } |di∈Di i=1,2..,n|
其中每一个元素(d1,d2,…,dn)叫做一个n元组,简称元组,元素中的每一个值di叫做一个分量。
一个域允许的不同取值个数称为这个域的基数。

:给定三个域
D1=导师集合={张清玫,刘毅}
D2=专业集合={计算机专业,信息专业}
D3=研究生集合={李勇,刘晨,王敏}
则D1、D2、D3的笛卡尔积为:
D1XD2XD3={
(张清玫,计算机专业,李勇) ,(张清玫,计算机专业,刘晨),(张清玫,计算机专业,王敏),
(张清玫,信息专业,李勇),(张清玫,信息专业,刘晨),(张清玫,信息专业,王敏),
(刘毅,计算机专业,李勇),(刘毅,计算机专业,刘晨),(刘毅,计算机专业,王敏),
(刘毅,信息专业,李勇),(刘毅,信息专业,刘晨),(刘毅,信息专业,王敏),
}
该笛卡尔积的基数为2x2x3=12,一共有12个元组

[3] 关系

D1xD2x…xDn的子集叫做在域D1,D2,…Dn上的关系,表示为R(D1,D2…,Dn)
R表示关系的名称,n是关系的目或度。
关系中的每个元素是关系中的元组,通常用t表示。
当n=1时,称该关系为单元关系,或一元关系。
当n=2时,称该关系为二元关系。
关系是笛卡尔积的有限子集,所以关系也是一张二维表,表的每行对应一个元素,表的每列对应一个域。列的名字称为属性,n目关系一定有n个属性。(属性相当于列

若关系中的某一属性组的值能唯一地标识一个元组,而其子集不能,则称该属性组为候选码。候选码相当于行
若一个关系有多个候选码,则选定其中一个为主码。
候选码的各个属性称为主属性,不包含在任何候选码中的属性称为非主属性或非主码属性。
在最简单的情况下,候选码只包含一个属性。在最极端的情况下,关系模式的所有属性是这个关系模式的候选码,称为全码。

:该关系取名为SQP

SUPERVISOR SPECIALITY POSTGRADUATE
张清玫 计算机专业 李勇
张清玫 计算机专业 刘晨
刘毅 信息专业 王敏

将该关系SAP的属性名取为域名,则该关系可以表示为:
SAP(SUPERVISOR,SPECIALITY,POSTGRADUATE)
假设研究生不会重名,则POSTGRADUATE属性的每一个值都唯一标识了一个元组,所以它可以作为SAP关系的主码。
关系有三种类型:基本关系、查询表和视图表。

扩充

(1)无限关系在数据库系统中是无意义的,所以限定关系数据模型中的关系必须是有限的集合。
(2)不同列可以出自同一个域,称其中的每一列为一个属性,不同的属性需要给与不同的属性名。
(3)列的次序可以任意交换
(4)任意两个元组的候选码不能取相同的值
(5)行的次序可以任意交换
(6)每一个分量都必须是不可分的数据项

二、关系模式

关系数据库中,关系模型是型,关系是值,关系模式是对关系1描述。
关系是元组的集合,因此关系模式必须指出这个元组集合的结构,即它由哪些属性构成,这些属性来自哪些域,以及属性与域之间的映像关系。

关系的描述称为关系模式,可以形式化地表示为R(U,D,DOM,F)

其中R为关系名
U为组成该关系的属性名集合
D为U中属性所来自的域
DOM为属性向域的映像集合
F为属性间数据的依赖关系集合

域名及属性向域的映像常常直接说明为属性的类型、长度。
关系是关系模式在某一时刻的状态或内容,关系模式是静态的、稳定的,而关系是动态的、随时间不断变化的,因为关系操作在不断地更新着数据库中的数据。
在实际工作中,人们常常把关系模式和关系都笼统称为关系。

三、关系数据库

在关系模式中,实体以及实体间的联系都是用关系来表示的。
关系数据库也有型和值之分。关系数据库的型也称为关系数据库模式,是对关系数据库的描述。关系数据库模式包括若干域的定义,以及在这些域上定义的若干关系模式。关系数据库的值是这些关系模式在某一时刻对应的关系的集合,通常称为关系数据库。

四、关系模型的存储结构

表是关系数据的逻辑模型。在关系数据库的物理组织中,有的关系数据库管理系统中一个表对应一个操作系统文件,将物理数据组织交给操作系统完成;有的关系数据库管理系统从操作系统那里申请若干个大的文件,自己划分文件控件,组织表、索引等存储结构,并进行存储管理。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章