数据库系统概论|第二章:关系数据库—课程笔记1

前言

关系数据库系统是支持关系模型的数据库系统。按照数据模型的三个要素,关系模型由关系数据结构、关系操作集合和关系完整性约束三部分组成。本部分首先主要介绍关系数据结构,包括关系的形式化定义及有关概念。

一、关系

关系模型的数据结构只包含单一的数据结构——关系,能够描述出现实世界的实体以及实体问的各种联系。在关系模型中,现实世界的实体以及实体间的各种联系均用单一的结构类型,即关系来表示。下面从集合论的角度给出关系的形式化定义。

1.域

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

可以简单理解为某一取值范围,某一属性的取值范围。如性别的{男,女}、成绩评价的{优秀,良好,及格,不及格}等。

2.笛卡尔积

笛卡儿积是域上的一种集合运算

D1D2Dn的笛卡尔积为D1×D2 ×…×Dn ={( d1d2dn)|di∈Dii=12n},其中每一个元素(d1d2dn)是一个n元组或简称元组。元素中的每一个值di叫做一个分量

一个域允许的不同取值个数称为这个域的基数。笛卡尔积可表示为一个二维表。表中的每行对应一个元组,表中的每一列的值来自一个域。比如可以给出如下三个域:

则由其形成的笛卡尔积可以表示为一张二维表

该笛卡尔积的基数为2*2*3=12,也就意味着结果中包含着12个元组,根据上面二维表,不难发现,确实具有12行,每一行代表一个元组。

3.关系

(1)关系及相关概念

D1×D2×…×Dn子集称作在域D1D2Dn上的关系,表示为RD1D2DnR表示关系的名字,n是关系的目或度

关系也可以用一张二维表表示,每一行代表一个元组,每一列代表一个域,为了更好的区分每一列,每一列有了一个新的名字,属性n目关系必有n个属性

若关系中的某一属性组的值能唯一地标识一个元组,则称该属性组为候选码。若一个关系有多个候选码,则选定其中一个为主码。候选码的诸属性称为主属性。不包含在任何候选码中的属性称为非主属性或非码属性

来看这样一个例子更好的理解这一部分:


现在定义一个实体为学生,其具有的属性为{姓名,学号,性别,身份证号,入学年份}五项,而在这五项之中,能够起到唯一地标识一个学生的属性为学号或者身份证号,那么:学号、身份证号为该属性组的候选码,不妨取学号主码(主属性),那么其余的姓名、性别、身份证号、入学年份相对应的称为非主属性


(2)关系的类型

关系具有三种类型:基本关系【基本表,实际存在的表】、查询表【动态表,根据查询结果对应显示】、视图表【虚表,不对应实际存储的数据】。 

(3)基本关系的性质

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

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

列的顺序无所谓,即列的次序可以任意交换。【增加属性名的方法破坏了列的有序性】

任意两个元组的候选码不能取相同的值。【候选码要发挥唯一确定的作用】

行的顺序无所谓,即行的次序可以任意交换。

分量必须取原子值,即每一个分量都必须是不可分的数据项。【不允许表中有表】

二、关系模式

关系数据库中,关系模式是型,关系是值。关系模式是对关系的描述。

关系的描述称为关系模式,它可以形式化地表示为RUDDOMF,其中R为关系名,U为组成该关系的属性名集合,DU中属性所来自的域,DOM为属性向域的映像集合,F为属性间数据的依赖关系集合。【可以理解为关系模式是在搭建框架,搭建起来这个关系中所具有的属性名以及之间的框架,而一个个具体的关系来填补这个框架】

关系模型通常可以进行简记为R(U)或者R(A1,A2,……,An)即仅用属性名来描述关系模式。

关系是关系模式在某一时刻的状态或内容。关系模式是静态的、稳定的,而关系是动态的、随时间不断变化的 

三、关系数据库

在关系模型中,实体以及实体间的联系都是用关系来表示的。在一个给定的应用领域中,所有关系的集合构成一个关系数据库。

关系数据库也有型和值之分。关系数据库的型(稳定的,很难变化)也称为关系数据库模式,是对关系数据库的描述。关系数据库模式包括若干域的定义,以及在这些域上定义的若干关系模式。

关系数据库的值(灵活的,易于变化)是这些关系模式在某一时刻对应的关系的集合,通常就称为关系数据库。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值