数据库系统概论-第二章

关系数据库应用数学方法来处理数据库中的数据。

2.1关系数据结构及形式化定义

关系数据库系统是支持关系模型的数据库系统。

2.1.1关系

单一的数据结构-关系

1,域

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

2,笛卡儿积

定义2.2 给定一组域,允许其中某些域是相同的。它们的笛卡儿积为每个域中取一值相组合形成的元组的集合。元素中的每一个值叫做一个分量。

一个域允许的不同取值个数称为这个域的基数。

3,关系

定义2.3 笛卡儿积的子集叫做在域上的关系R(D1,D2,……,Dn)。

R表示关系名字,n是关系的目或度。

n=1,单元关系。n=2,二元关系。n目关系必有n个属性。

候选码:能一唯一地标识一个元组,而其子集不能。一个关系有多个候选码,选其一为主码。

侯选码的诸属性称为主属性。不包含在任何候选码中的属性称为非主属性。

全码:关系模式的所有属性是这个关系模式的候选码。

当关系作为关系数据模型的数据结构时,需要给予如下的限定和扩充。

(1)关系必须是有限集合。

(2)通过为关系的每个列附加一个属性名的方法取消关系属性的有序性。

6条性质

(1)列是同质的,即每一列中的分量是同一类型的数据,来自同一个域。

(2)不同的列可出自同一个域,称其中的每一列为一个属性,不同的属性要给予不同的属性名。

(3)列的次序可以任意交换。

(4)任意两个元组的候选码不能取相同的值。

(5)行的次序可以任意交换。

(6)分量必须取原子值,即每一个分量都必须是不可分的数据项。

规范化的关系简称为范式。

2.1.2关系模式

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

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

关系是关系模式在某一时刻的状态或内容,关系模式是静态的,稳定的。而关亲是动态的,随时间不断变化的。因为关系操作在不断更新着数据库中的数据。

2.2关系操作

2.2.1基本的关系操作。

包括查询query和插入insert,删除delete和修改update两大部分。

查询query  关系操作最主要的部分。又可分为选择select,投影project,连接join,除divide,并union,差expect,交intersection,笛卡儿积等。其中选择,投影,并,差,笛卡儿积是5种基本操作。

关系操作为集合操作方式,非关系为一次一记录方式。

2.2.2关系数据语言的分类。

早期的关系操作能力通常用代数方式或逻辑方式来表示,分别称为关系代数和关系演算。

关系代数用对关系的运算来表达查询要求。

关系演算则用谓词来表达查询要求。关系演算又可按谓词变元的基本对象分为元组关系演算和域关系演算。

关系完备性指一个关系数据语言能够表示关系代数可以表示的查询。

介于关系代数和关系演算之间的结构化查询语言SQL。高度非过程化的语言。

2.3关系的完整性

关系模型中有三类完整性约束:实体完整性,参照完整性和用户定义的完整性。关系的两个不变性指实体完整性和参照完整性。

2.3.1实体完整性

规则2.1 实体完整性规则 若属性A是基本关系R的主属性,则A不能取空值。

说明如下:(1)实体完整性规则是针对基本关系而言的。

(2)现实世界中的实体是可区分的,即它们具有某种唯一性标识。

(3)关系模型中以主码作为唯一性标识。

(4)主码中属性不能取空值

2.3.2参照完整性

定义2.5 设F是基本关系R的一个或一组属性,但不是关系R的码,Ks是基本关系S的主码。如果F与Ks相对应,则称F是R的外码并称基本关系R为参照关系,基本关系S为被参照关系或目标关系。

规则2.2参照完整性规则 若属性或属性组F是基本关系R的外码,它与基本关系S的主码Ks相对应,则对于R中每个元组在F上的值必须:

或者取空值   或者等于S中某个元组的主码值

2.3.3用户定义的完整性

不同的关系数据库系统根据其应用环境的不同,往往还需要一些特殊的约束条件。用户定义的完整性就是针对某一具体关系数据库的约束条件,仅映某一具体应用所涉及的数据必须满足的语义要求。

2.4关系代数

关系代数的运算对象是关系,运算结果亦为关系。关系代数用到的运算符包括两类:集合运算符和专门的关系运算符

2.4.1传统的集合运算

并(union)差(except)交(intersection)

笛卡儿积4种运算。

两个分别为n目和m目的关系R和S的笛卡儿积是一广(n+m)列的元组的集合。若R有K1个元组,S有K2个元组,则关系R和关系S的笛卡儿积有K1xK2个元组。

2.4.2专门的关系运算

选择(selection)投影(projection)连接(join)除运算(division)等

1,选择又称限制。是在关系R中选择满是给定条件的诸元组,记作6F(R)=3{tlt∈R∧F(t)=‘真’}

2,投影,关系R上的投影是从R中选择出若干属性列组成新的关系。记作Пsname.Sdept(Student)

3,连接,是从两个关系的笛卡儿积中选取属性间满是一定条件的元组。两种常用连接 等值连接,自然连接。

等值连接:R关系在A属性组上的值与S关系在B属性组上的值相等。

自然连接:特殊的等值连接,要求两个关系中进行比较的分量必须是同名的属性组,并且在结果中把重复的属性列去掉。还需要取消重复列。

自然连接中被舍弃的元组称为悬浮元组。如果把悬浮元组也保存在结果关系中,而在其他属性上填空值,那么这种连接就叫做外连接,如果只保留左边关系R中的悬浮元组就叫做左外连接。同样,只保留右边叫做右外连接。

4,除运算 设关系R除以关系S的结果为关系T,则T包含所有在Q但不在S中的属性及其值,且T的元组与S的元组的所有组合都在R中。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值