【数据库】关系模型
学习数据库系统概念(第六版)笔记,第二章关系模型
关系数据库的结构
- 关系(relation)指代表(table)
属性(attribute)
- 列
- 域(domain):每个属性允许取值的集合
- 域如果不可再分则域是原子的(atomic)
- 每个域都有空值(null)
关系模式(relation schema)
- ,每个属性有其域
关系实例(relation instance)
-
一行数据、一个元组
-
-
元组顺序无关紧要
数据库模式
- 数据库实例:数据库中数据在某一时刻的快照(如一张表)
- 数据库模式:数据库的逻辑结构(如 )
码
属性的子集
超码(superkey)
唯一标识元组的一个或多个属性的集合
候选码(candidate key)
最小超码,任意真子集都不能称为超码
主码(primary key)
数据库设计者选中主要用来区分元组的候选码,一般选基本不变化的属性
外码(foreign key)
关系模式 包含的关系模式 的主码 , 是 参照 的外码,即 是外码 的参照关系, 是被参照关系,表述又称可以生命从 到 的外码约束
注意外码不能只引用主码的一部分
模式图
箭头指示外码,下划线是主码
关系查询语言
- 从数据库中请求获取信息的语言
- 过程化语言:给出获取信息的过程,指导系统执行操作,如关系代数
- 非过程化语言:只描述所需信息
- SQL既过程化也非过程化
完整性约束(SQL中还会提)
实体完整性约束
- 关系中的每个元组都是可识别的和唯一的
- 即关系数据库中所有的表都必须有主键,且表中的记录必须有主键值,主键值均不相同
参照完整性约束(子集依赖)
定义外键与被参照的主键之间的引用规则
用户定义完整性约束
某一具体应用所涉及的数据必须满足应用语义的要求