欢迎来到天天文库
浏览记录
ID:40246599
大小:854.00 KB
页数:52页
时间:2019-07-29
《数据库原理及应用 刘玉宝 第2章 关系数据库系统理论基础》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第2章关系数据库系统理论基础本章要点关系模型关系数据结构及形式化定义关系的完整性约束关系代数关系数据库标准语言SQL关系的规范化7/26/2021关系模型是建立在数学概念上的,与层次模型、网状模型相比,关系模型是一种最重要的数据模型。它主要由关系数据结构、关系操作集合、关系完整性约束三部分组成。实际上,关系模型可以理解为用二维表格结构来表示实体及实体之间联系的模型,表格的列表示关系的属性,表格的行表示关系中的元组。关系数据模型的常用操作有选择(select)、投影(project)、连接(join)、除(divide)、并(union)、交(intersection)、差(dif
2、ference)等查询(query)操作,另外还有增加(insert)、删除(delete)、修改(update)操作。关系操作的特点是集合操作方式,即操作的对象和结果都是集合。2.1关系模型概述7/26/2021关系数据语言是一种高度的非过程化的语言,用户不必知道具体的操作路径,存取路径的选择由DBMS的优化机制完成。主要包括关系代数语言、关系演算语言和SQL语言(关系数据库的标准语言)。关系模型允许定义三类完整性约束:实体完整性、参照完整性和用户定义的完整性。实体完整性和参照完整性是关系模型必须满足的完整性约束条件。用户定义的完整性是应用领域需要遵循的约束条件。7/26/20
3、212.2关系数据结构及形式化定义2.2.1关系的数学定义(1)域(Domain)定义2.1域是一组具有相同数据类型的值集合。例如:{1,3,5,7},{整数}等都可以是域。域中数据的个数称为域的基数。域被命名后用如下方法表示:D1={王丽丽,张亭,李中},表示姓名的集合,基数是3;D2={英语系,中文系},表示系别的集合,基数是2。(2)笛卡尔积(CartesianProduct)定义2.2给定一组域D1,D2,…,Di,…,Dn(可以有相同的域),则笛卡尔积定义为:7/26/2021D1′D2′…′Di′…′Dn={(d1,d2,…,di,…,dn)∣di∈Di,i=1,2,
4、…,n}D1′D2={(王丽丽,英语系),(王丽丽,中文系),(张亭,英语系),(张亭,中文系),(李中,英语系),(李中,中文系)}其中每个(d1,d2,…,di,…,dn)叫做元组,元组中的每一个值di叫做分量,di必须是Di中的一个值。显然,笛卡尔积的基数就是构成该积所有域的基数累乘积,若Di(i=1,2,…,n)为有限集合,其基数为mi(i=1,2,…,n),则D1′D2′…′Di′…′Dn笛卡尔积的基数M为:该笛卡尔积的基数是M=m1′m2=3′2=6,即该笛卡尔积共有6个元组,它可组成一张二维表,如表2-1所示。7/26/2021表2-1D1,D2的笛卡尔积(3)关系
5、(Relation)定义2.3笛卡尔积D1′D2′…′Di′…′Dn的子集R称作在域D1,D2,…,Dn上的关系,记作:R(D1,D2,…,Di,…,Dn)其中:R为关系名,n为关系的度或目(Degree),Di是域组中的第i个域名。当n=1时,称该关系为单元关系;姓名院系王丽丽英语系王丽丽中文系张亭英语系张亭中文系李中英语系李中中文系7/26/2021当n=2时,称该关系为二元关系;以此类推,关系中有n个域,称该关系为n元关系。下面是关系中涉及到的一些相关概念:(1)属性(Attribute):列的名字。(2)候选码:若关系中的某一属性组的值能唯一地标识一个元组,则称该属性组为
6、候选码(CandidateKey)。(3)主码:若一个关系有多个候选码,则选定其中的一个为主码(PrimaryKey)。(4)主属性:主码的诸属性为主属性(PrimeAttribute)。(5)非码属性:不包含在任何候选码中的属性称为非码属性。(6)全码:关系模式的所有属性组是这个关系模式的候选码,称为全码(All-key)。7/26/2021一般来说,一个关系取自笛卡尔积的子集才有意义。例如表2-2所示:表2-2D1,D2的笛卡尔积中构造的关系(4)关系的三种类型①基本关系(基本表或基表):实际存在的表,它是实际存储数据的逻辑表示。②查询表:查询结果对应的表。③视图表:有基本表
7、或其他视图导出的表,是虚表,不对应实际存储的数据。姓名院系王丽丽英语系张亭中文系李中英语系7/26/20212.2.2关系的性质关系是一种规范化了的二维表中行的集合。为了使相应的数据操作简化,在关系模型中对关系进行了限制,因此关系具有以下六条性质:(1)列是同质的,即每一列中的分量是同一类型的数据,来自同一个域。(2)关系中的任意两个元组不能相同。(3)关系中不同的列来自相同的域,每一列中有不同的属性名。(4)关系中列的顺序可以任意互换,不会改变关系的意义。(5)行的次序和列的次
此文档下载收益归作者所有