Skip to content
Datablau DDM数据建模产品手册
数据建模客户端 模块手册下载 PDF

关系类型 ​

关系类型决定关系的语义、创建时对子表字段的自动处理方式,以及逻辑模型转换为物理模型后的形态。本页用对照表汇总六种关系类型;新建关系见关系操作,属性项见关系属性。

类型对照表 ​

关系类型定义创建时对子表字段的处理逻辑→物理转换后的形态
标识关系子表主键包含父表主键,子表的存在依赖父表子表无同名父主键字段时自动创建并设为主键;已有同名字段则设为子表主键保持标识关系,形成复合主键
非标识关系父子表之间没有主键包含关系,存在相互独立子表无同名父主键字段时自动创建并设为外键;已有同名字段则设为外键保持非标识关系,以外键引用父表
视图关系视图与一个或多个表之间的联系,说明视图的派生来源建立视图字段与表字段的引用关系,可为视图新建字段保持视图与表之间的引用
虚拟关系为逻辑设计而设、不在数据库实现的关系不生成主键或外键,仅记录展示用连接不转化为数据库实现
多对多关系两个实体之间多对多的关联不直接落在单个子表上转换为含中间表的两个一对多关系
Subtype 关系实体集合可划分为多个互不相交的子集,表达特化与泛化子类型实体沿用父实体的标识字段转换为多个标识关系

标识关系与非标识关系 ​

两者的差别在于子表的主键是否包含父表主键。标识关系表达“子表因父表而存在”,例如订单明细依赖订单;非标识关系表达两个表各自独立、仅通过外键引用,例如订单引用客户。

创建时若子表中已存在与父表主键同名的字段,系统直接使用这些字段并设置为主键或外键,不会新建重复字段。因此子表中恰好存在同名字段时,应先确认该字段确实用于关联。

视图关系 ​

视图关系除按常规方式连接外,还支持从表中直接把字段拖到视图上:拖动既可为视图新建字段,也同时建立视图字段与源表字段的引用关系。视图本身的维护见视图操作。

只存在于逻辑模型的关系 ​

多对多关系与 Subtype 关系只在逻辑模型中存在,数据库无法直接实现,转换到物理模型时会改变形态:

  • 多对多关系转换为包含中间表的两个一对多关系,转换后需核对中间表的字段与命名。
  • Subtype 关系转换为多个标识关系,子类型实体成为独立的表。

转换后建议用模型检查核对主外键是否完整。

注意事项 ​

  • 关系类型在创建时确定子表字段的处理方式,创建后修改类型需要手工复核子表字段。
  • 虚拟关系不生成物理约束,用于表达不落库的设计关联,避免与标识、非标识关系混用。
  • 视图关系只在物理模型中有意义,逻辑模型中不创建。