关系数据库重点知识点总结

关系数据库系统 是支持关系模型的数据库系统.由关系模型的三要素可知,关系模型由关系数据结构、关系操作集合和关系完整性约束三部分组成。


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

***关系:

关系模型的数据结构非常简单,只包含单一的数据结构–关系。在用户看来,关系模型的逻辑结构是一张扁平的二维表。此处从集合论的角度给出关系数据结构的形式化定义。
1)域(domain):
域是具有相同数据类型的值的集合。
2)笛卡尔积(cartesian product):
笛卡尔积是集合的乘积运算。给定一组域D1,D2,D3,…Dn,允许其中的某些域是相同的,域D1,D2,D3,…Dn 的笛卡尔积为:
D1xD2xD3…xDn={(d1,d2,d3,…,dn) | di∈Di, i= 1,2,3…,n} 其中,每一个元素叫作一个n元组(或简称为元组)元素中的每一个值di叫做分量(component).一个域允许的不同取值个数叫做这个域的基数。
笛卡尔积可表示一张二维表,表中的每一行对应一个元组(或记录),表中的每一列的值来自一个域。
3)关系:
D1xD2xD3…xDn的子集叫做在域D1,D2,D3,…Dn 的关系。表示为:R(D1,D2,D3,…Dn ),R表示关系的名字,n表示关系的度(目),当n=1时为一元关系,当n=2时为二元关系。关系式笛卡尔积的有限子集,所以关系也是一张二维表。由于域可以相同为了加以区分,必须对每列取一个名字,称为属性
.n元关系必有n个属性。
如果关系中的某一属性组的值能唯一地标识一个元组,而其子集不能,则称该属性组为候选码(candidate key)
若一个关系有多个候选码,则选定其中一个为主码(primary key ).
候选码的诸属性称为主属性(prime attribute),不包含在任何候选码中的属性叫做非主属性(non-prime attribute)或非码属性。

注意:在最简单的情况下,候选码只包含一个属性。在最极端的情况下,关系模式中的所有属性都是这个关系模式的候选码,称为全码(all-key).一般来说,D1,D2,D3,…Dn的笛卡尔积是没有实际意义的,只有它的真子集才有实际意义
举个栗子:
Student关系

学号(主码) 姓名(主属性) 年龄(非主属性) 地址(非主属性)
1001 张三 20 北京市海淀区
1002 李四 22 上海市浦东新区
1003 王五 21 广州市天河区

这是一个简单的二维表,它显示了学生的基本信息以及他们的学号、姓名、年龄和地址等属性。在这个二维表中,我们可以识别出一些重要的概念,并对这些概念进行如下说明:

  • 主码:学号是这个二维表的主码,用于唯一标识每个学生的记录。主码是一个关系模型中的重要组成部分,它可以帮助我们建立不同表之间的联系。

  • 候选码:如果一个或多个属性的组合可以唯一标识记录,那么这个属性组合被称为候选码。在这个例子中,学号是唯一标识每个学生的属性,因此它也是候选码。

  • 主属性:主属性是与主码直接相关的属性,它们包含在主键中并且可以唯一标识每个记录。在这个例子中,姓名是主属性,因为它是与学号一起构成主键的一部分。

  • 非主属性:与主码无关的属性称为非主属性。在这个例子中,年龄和地址都是非主属性,因为它们不会影响学生记录的唯一性。
    通过以上解释,我们可以更好地理解数据库设计中的几个重要概念,并了解如何在关系模型中应用它们。

关系的性质(关系具有以下6条性质):
①列是同质的(homogeneous),即每一列中的分量是同一类型的数据,来自同一个域。②不同的列可出自于同一个域,称其中的每一列为一个属性。不同的属性要给予不同的属性名。
③列的顺序无所谓,可以任意交换。由于列的次序是无关紧要的,所以在许多实际的关系库产品中增加的新属性永远是插在最后一列。
任意两个元组的候选码不能取相同的值。
行的顺序无所谓,可以任意交换。
⑥分量必须取原子值,即每个分量必须是不可再分的数据项。这是关系规范条件中最基本的一条。


关系模式:
关系的描述叫做关系模式(relation schema)。它可以形式化的表示为: R(U, D,DOM,F)。其中,R为关系名,U为组成该关系的属性名集合,D为U中属性所来自的域,DOM为属性向域的映象集合,F为属性间数据的依赖关系集合。
关系是关系模式在某一时刻的状态或内容。关系模式是静态的、稳定的,而关系是动态的、随时间不断变化的,因为关系操作在不断地更新着数据库中的数据。
关系数据库也有型和值之分。关系数据库的型也称为关系数据库模式,是对关系数据库的描述。关系数据库的值是这些关系模式在某一时刻对应关系的集合,通常就称为关系数据库。


二、关系操作:

1.基本关系操作:
基本关系操作包括:查询(query)操作和插入(insert)、删除(delete)、修改(update)操作两大部分。
关系的查询表达能力较强,是关系操作中的最主要部分。查询操作又可分为:选择(select)、投影(project)、连接(join)、除(divide)、并(union)、差(except)、交(intersection)、笛卡尔积等等。其中 选择、投影、并、差、笛卡尔积是5种基本操作,其它操作可以由基本操作推导得来。 关系操作的特点是 集合操作方式,即操作对象都是集合。这种操作方式也叫做一次一集合(set-at-a-time)的方式。相应的,非关系数据模型的数据操作方式则为一次一记录的方式
2、关系数据语言的分类:

你可能感兴趣的:(数据库)