回顾
数据模型(Data model):用来描述数据、数据之间关系、数据的含义以及数据的完整性约束的一套概念工具的集合
类比于程序设计语言中的程序语言
一、数据模型
- 数据模型的三要素:数据结构、数据操作、数据的完整性约束
二、关系数据结构
1.关系模型
表中的一行代表一组值的一种联系 ,叫做n元组,有n个值的行
关系模型就是用表来管理这种联系的集合
关系模型中:表被称为关系,一行被称为n元组,一列被称为属性
- 域:一个集合,对于属性可选取值的限制。一个属性对应一个域
- 数学意义下和关系模型下关系的对比:
1、数学中可以是无限的,关系模型下元组一定有限
2、关系模型不用考虑顺序 - 所有关系的所有属性的域必须是原子的,即一个格子里只能有一个值
- NULL:代表一种不清楚或缺失的状态
三、候选码、超码、主码、外码
- 超码:可以用来在一个关系当中唯一标识一个元组的属性集合
- 候选码:任何真子集都不再是超码的超码,即最小的超码
举例:
身份证和姓名的集合可以是超码但不可以是候选码
身份证是超码也是候选码
可以有多个候选码
- 主码:设计者选择一个候选码作为主码
- 实体完整性约束:主码属性不允许为NULL
- 主属性:存在于某一个候选码中的属性
- 非主属性:一个属性在所有的候选码中都没有出现过
- 外码:外码不是码,外码一定是其他表的主码
四、关系操作
关系运算中:输入是一个或两个关系,输出是一个关系