[数据库系统概论学习笔记]3.关系

重点与难点
一组概念的区分:围绕关系的县官概念,如域,笛卡尔积,关系,关系模式,关键字/键/码, 外码/外键, 主码/主键, 主属性与非主属性.
三个完整性:实体完整性,参照完整性和用户自定义的完整性;

关系模型简述

最早由E.F.Codd在1970年提出
是从表(Table)及表的处理方式中抽象出来的,是在传统表及其操作进行数学化严格定义基础上,引入集合理论与逻辑学理论提出的
是数据库的三大经典数据模型之一,也是现在大多数商品化数据库系统所仍然使用的数据模型
标准的数据库语言(SQL语言)是建立在关系模型基础之上的,数据库领域的众多理论也都是建立在关系模型基础之上的

关系模型研究什么

形象地说,一个关系(relation)就是一个Table
关系模型就是处理Table的,它由三个部分组成:
描述DB各种数据的基本结构形式(Table/Relation)
描述Table与Table之间所可能发生的各种操作(关系运算)
描述这些操作所应遵循的约束条件(完整性约束)
就是要学习:Table如何描述,有哪些操作,结果是什么,有哪些约束等?

关系模型的三个要素

基本结构:Relation/Table
基本操作:Relation Operator
基本的:并,差,广义积,选择,投影,
扩展的:交,连接,除运算

完整性约束:实体完整性,参照完整性和用户自定义完整性

关系运算与关系数据库语言的关系

关系运算:关系代数和关系演算; 关系演算:元组演算和域演算
关系代数实例:基于集合的运算

与元组演算不同,域演算以域进行计算

学习内容概述

哈工大数据库课件整理.pdf

域的基数即域当中元素的个数

关系模式与关系

同一关系模式下,可有很多的关系
关系模式是关系的结构,关系是关系模式在某一时刻的数据
关系模式是稳定的:而关系是某一时刻的值,是随时间可能变化的

关系的特性

列是同质:即每一列中的分量来自同一域,是同一类型的数据
不同的列可来自同一个域,称其中的每一列为一个属性,不同的属性要给予不同的属性名

列位置互换性:区分哪一列是靠列名
行位置互换性:区分哪一行是靠某一或某几列的值(关键字/键字/码字)
关系是以内容(名字或值)来区分的,而不是属性在关系的位置来区分
理论上,关系的任意两个元组不能完全相同.(集合的要求:集合内不能有相同的两个元素);现实应用中,表(Table)可能并不完全遵守此特性.
关系数据库语言中都是以关系来描述的,而商用数据库中使用的是表
元组相同是指两个元组的每个分量都相同
属性不可再分特性:又被称为关系第一范式

关系上的一些重要概念

##候选码(Candidate Key)/候选键
关系中的一个属性组,其值能唯一标识一个元组,若从该属性组中去掉任何一个属性,它就不具有这一性质了,这样的属性组称作候选码

主码(Primary Key)/主键

当有多个候选码时,可以选定一个作为主码
DBMS以主码为主要线索管理关系中的各个元组

主属性与非主属性

包含在任何一个候选码中的属性被称为主属性,而其他属性被称作非主属性

最简单的,候选码只包含一个属性
最极端的,所有属性构成这个关系的候选码,称为全码(All-Key)
比如:关系"教师授课"(T#,C#)中的候选码(T#,C#)就是全码

外码(Foreign Key)/外键

关系R中的一个属性组,他不是R的候选码,但它与另一个关系S的候选码相对应,则称这个属性组为R的外码或外键

实体完整性

Attachment
Attachment

参照完整性

Attachment

用户自定义完整性

Attachment

Attachment

Attachment

你可能感兴趣的