ER 图与 UML 到关系的转换
实体集怎样转换为关系表?
- 规则: 每个实体集转换为一个关系表, 表的属性与实体集的属性相同;
- 主键: 实体集的键成为表的主键;
联系怎样转换为关系表?
- 规则: 每个联系转换为一个关系表;
- 属性: 该联系的连接实体集的键的集合;
- 主键: 由联系的多重性决定, 多对多联系的键通常是两侧键的组合;
一次完整的转换长什么样?
实体集 Movie(title, year, length)
实体集 Studio(name, address)
联系 Produces(Movie, Studio)
-> Movie(title, year, length)
-> Studio(name, address)
-> Produces(title, year, name)
- 说明: 联系表的属性是两侧实体集键的组合, 用它把多对多联系的两侧连接起来;
UML 类图怎样转换为关系表?
- 类: 每一个类创建一个关系表;
- 类之间的关系: 创建一个关系表, 属性为关系连接的两个类的键;
- 边界: UML 的图形与建模语法不在本集合范围, 这里只保留与关系模型转换有关的规则;
(source: 030-高级数据库模型.md §ER 模型/§UML)