跳到主要内容

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)