ER 模型
ER 模型用哪些术语描述现实世界?
- 实体: 某种被抽象出来的对象;
- 实体集: 相似实体的集合;
- 属性: 实体集上的性质;
- 联系: 实体集之间的关联;
ER 图用什么图形表示这些元素?
| 图形 | 表示 |
|---|---|
| 矩形 | 实体集 |
| 椭圆 | 属性 |
| 菱形 | 联系 |
- 作用: 描述关系数据库的模式, 是建表的输入;
联系的多样性有哪几种?
| 多样性 | 含义 |
|---|---|
| 一对一 | 两侧各至多对应一个实体 |
| 一对多 | 一侧的一个实体对应多个 |
| 多对一 | 一侧的多个实体对应一个 |
| 多对多 | 两侧都可对应多个 |
is-a 联系表示什么?
- 定义: 实体集 A 与其子集 B 之间的关系, 记作 B isa A;
- 含义: B 是 A 的特化, B 的实体同时属于 A;
- 用途: 把共有属性上提到 A, 只把特有属性留在 B;
ER 模型设计要遵循哪些原则?
- 忠实性: 如实反映现实世界的对象与关联;
- 避免冗余: 同一事实只在一个位置表达;
- 简单性: 不引入无必要的实体集与联系;
- 选择正确的联系: 明确实体集之间到底是一对多还是多对多;
- 划分正确的实体集: 把属性归到真正拥有的实体集上;
(source: 030-高级数据库模型.md §ER 模型)