数据库课堂笔记二(关系数据库)

关系数据库

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

一、关系

1.域(domain):是一组具有相同数据类型的值的集合。
2.笛卡儿积(cartesian product):笛卡儿积是域上的一种集合运算。(行相乘,列相加)
定义:给定一组域D1,D 2 , …,Dn。 , 允许其中某些域是相同的,D 1 ,D 2 , …,Dn
的笛卡儿积为 D1×D2x …xDn= {(d1,…,dn) I dj∈Di, i=l, 2,…,n} 其中,每一个元素(d1,…,dn)叫作一个n元组( n-tuple ) , 或简称元组( tuple ) 。 元素中的每一个值必叫做一个分量(component)。
笛卡儿积可表示为一张二维表。表中的每行对应一个元组,表中的每一列的值来自一 个域。
3.D1×D2×…×Dn的子集叫做在D1,D2,…,Dn的关系,表示为R(D1×D2×…×Dn){R是关系的名字,n是关系的目或度}。
4.候选码:关系中的某一属性组的值能唯一的标识一个元组而其子集不能
5.若一个关系有多个候选码,则选定其中一个为主码(primary key)
6.候选码的诸属性称为主属性(prime attribute)o不包含在任何候选码中的属性称为非主
属性(non-prime attribute)或非码属性(non-key attribute)。
7.在最简单的情况下,候选码只包含一个属性。在最极端的情况下,关系模式的所有属 性是这个关系模式的候选码,称为全码(all-key)。
8.关系可以有三种类型:基本关系(通常又称为基本表或基表)、查询表和视图表。
9.基本关系的6条性质:
(1)列是同质的(homogeneous),即每一列中的分量是同一类型的数据,来自同一个域。
(2) 不同的列可出自同一个域,称其中的每一列为一个属性,不同的属性要给予不同 的属性名。
(3) 列的顺序无所谓,即列的次序可以任意交换。
(4) 任意两个元组的候选码不能取相同的值。
(5) 行的顺序无所谓,即行的次序可以任意交换。
(6) 分量必须取原子值,即每一个分量都必须是不可分的数据项。

关系模式

1.关系的描述称为关系模式。它可以形式化地表示为 R(U, D, DOM, F)。(其中R为关系名,U为组成该关系的属性名集合,D为U中属性所来自的域,DOM为属 性向域的映像集合,F为属性间数据的依赖关系集合。)

关系数据库

1.关系数据库的型也称为关系数据库模式,是对关系数据
库的描述。关系数据库模式包括若干域的定义,以及在这些域上定义的若干关系模式。
关系数据库的值是这些关系模式在某一时刻对应的关系的集合,通常就称为关系数据库。

关系操作

基本的关系操作

1.关系模型中常用的关系操作包括查询操作和插入、删除、 修改操作两大部分。
2.查询操作又可以分为选择、投影、连接、除、并、差、 交、 笛卡儿积等。其中选择、投影、并、差、笛卡儿积是5种基本操作。

关系的完整性

实体完整性

1.若属性(指一个或一组属性)A是基本关系R的主属性, 则A不能取空值(null value)。所谓空值就是“不知道”或“不存在”或“无意义”的值。
2.实体完整性规则描述:
(1)实体完整性规则是针对基本关系而言的。一个基本表通常对应现实世界的一个实 体集。
(2)现实世界中的实体是可区分的,即它们具有某种唯一性标识。
(3)相应地,关系模型中以主码作为唯一性标识。
(4)主码中的属性即主属性不能取空值。如果主属性取空值,就说明存在某个不可标 识的实体,即存在不可区分的实体,这与第(2)点相矛盾。

参照完整性

参照完整性规则就是定义外码与主码之间的引用规则
参照完整性规则:
若属性(或属性组)F 是基本关系R的外码,它与基本关 系S 的主码相对应(基本关系和S 不一定是不同的关系),则对于中每个元组在F 上的值必须:
•或者取空值(F的每个属性值均为空值);
•或者等于S中某个元组的主码值。

用户定义的完整性

针对某一具体关系数据库的约束条件,它反映某一具体应 用所涉及的数据必须满足的语义要求。

关系代数

1.关系代数是一种抽象的查询语言,它用对关系的运算来表达查询。
2.关系代数的运算按运算符的不同可分为传统的集 合运算和专门的关系运算两类。
在这里插入图片描述
3.传统的集合运算是二目运算,包括并、差、交、笛卡儿积4种运算。
设关系R和关系S具有相同的目n (即两个关系都有n个属性),且相应的属性取自同 一个域,f是元组变量,t^R表示f是的一个元组。
可以定义并、差、交、笛卡儿积运算如下。
(1) 并
R∪S={t|t∈R∨t∈S}
(2)交
R∩S={t|t∈R∧t属于S}或R∩S=R-(R-S)
(3)差
R-S={t|t∈R∧t∉S}
(4)笛卡儿积
R×S=()
4.专门的关系运算包括选择、投影、连接、除运算等
(1)选择
选择又称限制,它是在关系中选择满足给定条件的诸元组,记作
在这里插入图片描述
其中F表示选择条件,它是一个逻辑表达式,取逻辑值“真”或“假”。
逻辑表达式F的基本形式为X1θY1。其中θ表示比较运算符,它可以是>,<, ≥,≤,=或<,>。不,X1,Y1等是属性名,或为常量,或为简单函数;属性名也可以用它的序号来代替。在基本的选择条件上可以进一步进行逻辑 运算,即进行求非(¬)、与(∧)、或(V)运算。
在这里插入图片描述
(2)投影(projection)
关系上的投影是从中选择出若干属性列组成新的关系。记作
在这里插入图片描述
其中A为R中的属性列
(3)连接
连接也称为θ连接。它是从两个关系的笛卡儿积中选取属性间满足一定条件的元组。记做
在这里插入图片描述
其中,A 和V 分别为R和S 上列数相等且可比的属性组,θ 是比较运算符。连接运算从 R和S的笛卡儿积R×S中选取R关系在A属性组上的值与S 关系在B属性组上的值满足比 较关系θ的元组。
连接运算中有两种最为重要也最为常用的连接,一种是等值连接(equijoin),另一种 是自然连接。
(4)除运算
设关系R除以关系S的结果为关系T,则T包含所有在R但不在S中的属性及其值, 且T的元组与S的元组的所有组合都在R中。
下面用象集来定义除法:
给定关系R(X,Y)和S(Y,Z),其中X,Y,Z为属性组。R中的Y与S中的Y可以有 不同的属性名,但必须出自相同的域集。
R与S的除运算得到一个新的关系P(X),P是R中满足下列条件的元组在X属性列上 的投影:元组在义上分量值x的象集匕包含s在y上投影的集合。记作
在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值