第7章 关系数据库
7.1 关系数据库概述
7.1.1 基础知识
关系数据库系统
关系的相关名词
(1)关系:在关系数据库中,实体以及实体间的联系都是用关系来表示的。类似于程序设计语言中变量的概念。
(2)关系模式:是对关系的描述。类似于程序设计语言中类型定义的概念。
(3)关系模型:是由若干个关系模式组成的集合。
(4)属性(Attribute):用来描述某一个事物的特征。
(5)域(Domain):每个属性的取值范围所对应一个值的集合。
(6)候选码(Candidate Key):若关系中的某一属性或属性组的值能唯一标识一个元组,则称该属性或属性组 为候选码。
(7)主码(Primary Key):又称为主键,若一个关系有多个候选码,则选定其中一个为主码。 只能有一个主码。
(8)主属性(Prime attribute):包含在任何候选码中的各个属性称为主属性。
(9)非主属性:不包含在任何候选码中的属性称为非主属性。
(10)外码:如果关系模式R 中的属性或属性组非该关系的码,但它是其他关系的码,那么该属性集对关系模式R 而言是外码。
(11)全码(All-key):关系模型的所有属性组是这个关系模式的候选码,称为全码。
(12)元组/记录:行
(13)字段、数据项
(14)元数:属性的个数(列数)
(15)基数:记录的个数(行数)
(16)n元关系:元数为几,就是 几元关系。
关系的三种类型
(1)基本关系(又称基本表或基表)
(2)查询表
(3)视图表
关系数据库中的关系模型事实上可以看作是一个二维表,这个二维表中的列称为属性(或字段),行称为元组(或记录)。
例题:若关系R(H,L,M,P)的主键为全码(All-key),则关系R 的主键应为HLMP
7.1.2 关系数据库模式
7.1.3 关系的完整性约束
(1) 实体完整性
(2) 用户自定义完整性
(3) 参照完整性/引用完整性
7.2 关系运算
7.2.1 关系代数运算
7.2.2 五种基本的关系代数运算
并、差 、广义笛卡儿积、投影及广义投影、选择
7.2.3 扩展的关系运算
交 、连接(θ连接、等值连接与自然连接)、除、外连接(左外连接⟕、右外连接⟖、全外连接⟗)