- pdf 下载:明码 7281
- 点击这里浏览成果更好:【专栏必读】(考研复试)数据库系统概论第五版(王珊)专栏学习笔记目录导航及课后习题答案详解
后面说过,数据模型由以下三局部形成
- 数据结构
- 数据操作
- 数据的完整性约束条件
而现在最为重要的数据模型便是关系模型。本书所学的 关系数据库就是反对关系模型的数据库系统,因而本章重点钻研的也是以下三个局部
- 关系数据结构(本节介绍)
- 关系操作汇合(第二节介绍)
- 关系完整性约束条件(第三节介绍)
而后第四节和第五节别离介绍关系代数和关系演算
一:关系
后面说过,关系模型建设在严格的数学概念之上,只蕴含繁多的数据结构——关系,在用户看来关系就是一张二维表
(1)域
域:是一组具备雷同数据类型的值的汇合
- 如自然数、整数、实数
(2)笛卡尔积
笛卡尔积:是一种域下面的汇合运算,失去每个域中元素的所有可能的组合,它能够示意为一张二维表,在笛卡尔积中有
- 元组 :每一行是一个元组,比方 (张清玫,计算机专业,李勇)、(张清玫,计算机专业,刘晨) 等都是元组 ;
- 重量:每一行中每一个元素都是一个重量,比方张清玫、计算机专业、李勇、刘晨等都是重量
比方上面的 $D_{1}$、$D_{2}$ 和 $D_{3}$ 个域
如果让他们做笛卡尔积,也就是排列组合,那么就会造成上面一张二维表
由此可知,该笛卡尔积的基数为 2×2×3=12,也即有 12 个元组
下面的笛卡尔积中很多元组 是没有意义的 (例如在理论情景中一个导师个别专一于一个钻研方向)。所以该笛卡尔积 的一个子集才是有意义的,才能够示意导师和研究生的关系,例如
- 表 SAP
(3)关系
A:根本概述
关系:笛卡尔积($D_{1}$×$D_{2}$,…,$D_{n}$)的子集叫做在域 $D_{1}$、$D_{2}$,…,$D_{n}$ 的关系,示意为 R($D_{1}$、$D_{2}$,…,$D_{n}$), 其中
- R:关系名
- n:关系的目或度(n= 1 时称为单元关系,n= 2 时称为二元关系)
关系既然是笛卡尔积的子集(无限子集),所以关系也是一张 二维表
- 表的每一行对应一个元组,表的每一列对应一个域
- 因为域能够雷同,为了辨别,必须对每列起一个名字,称为属性(比方下面的表中研究生和导师都是人,为了辨别,所以才取了不同的名字)
B:码相干概念
以上面关系为例
候选码:若关系中的某一属性组(留神是组不是某单个属性,当然有时属性组也可能只有一个属性)能惟一地标识一个元组,而其子集不能,则该属性组称之为候选码
- 下面关系中,学号是无奈辨别的,因为学号尽管不反复,但一个学生可能会对应多个课程,这就导致学号无奈惟一标识一个元组。因而这里(学号,课程名)能够作为一个候选码
- 须要留神的是候选码不肯定只有一个,可能有多个,只有满足条件即可,但在本例中的确只有一个
超码:可能惟一标识一条记录的属性或属性集,超码是候选码的裁减,候选码是最小的超码
- 下面关系中,(学号、课程名)是候选码,那么它的超集,例如(学号、课程名、姓名)、(学号、课程名、性别)就是超码
主码:某个可能惟一标识一条记录的最小属性集(候选码中的“人选之子”)
- 候选码可能有多个,然而数据库设计者在设计时会依据理论需要抉择一个候选码作为主码
外码:是本关系的属性且不是码,而是另一个关系的主码(后续会具体介绍)
全码:这是一种非凡状况:关系的所有属性组是这个关系模式的候选码
主属性和非属性:蕴含在候选码中的属性(留神是汇合,不是某个候选码)称为主属性;不蕴含在候选码中的属性称为非主属性
- 下面关系中,姓名、性别和期末分数都是非主属性
C:关系的三种类型
关系能够有三种类型
- 根本关系(又称为根本表):理论存在 的表,是理论存储数据的逻辑示意
- 查问表 : 查问后果 对应的表
- 视图表 :由根本表或其余视图表导出的表, 是虚表,不对应理论存储的数据
其中根本关系满足以下性质(作理解即可)
二:关系模式
在(数据库系统概论 | 王珊)第一章绪论 - 第三节:数据库系统的构造中讲过型和值的概念
- 型(type):对某一类数据的构造和属性的阐明
- 值(value):是型的一个具体赋值
在关系数据库中,关系模式就是型,关系就是值,关系模式是对关系的形容,具体来说要形容以下方面
- 元组汇合的构造(由哪些属性形成、这些属性来自哪些域、属性与域之间的映像关系)
- 元组语义以及完整性束缚
- 属性之间的数据依赖关系
关系模式:关系模式就是对关系的形容,能够示意为
$$R(U,D,DOM,F)$$
- $R$:关系名
- $U$:组成该关系的属性名汇合
- $D$:$U$ 中属性所来自的域
- $DOM$:属性向域的映像汇合
- $F$:属性间数据的依赖关系汇合(此局部属于第六章:关系数据实践的内容)
关系模式通常能够简记为(重点用)
$$R(U)$$
或
$$R(A_{1},A_{2},…,A_{n})$$
- $R$:关系名
- $A_{1},A_{2},…,A_{n}$:属性名
- “域名”及“属性向域的映像”经常间接阐明为属性的 类型 和长度
三:关系数据库
(1)基本概念
关系数据库:在一个给定的应用领域中,所有关系的汇合形成的一个关系数据库
(2)关系数据库的型与值
关系数据库的型:也称为关系数据库模式,是对关系数据库的形容,包含
- 若干域的定义
- 在这些域上定义的若干关系模式
关系数据库的值:这些关系模式在某一时刻对应的关系的和,通常就叫做关系数据库