功能说明
用于向数据源中创建关系数据集,管理两个数据集对象之间的关联关系。例如,数据集A存储了某行政区域内的不动产单元(地块)信息(不动产单元号、地块用途、面积),数据集B存储了不动产权利人信息(姓名、身份证号、不动产单元号),通过对数据集A和数据集B基于关键字段“不动产单元号”创建一对多关联关系,即可在浏览或查询数据集A中的某地块时,即时关联并获取到该地块对应的权利人所有信息。
在使用此功能前,您需要注意以下限制条件:
- 支持的数据集类型:二维点/线/面数据集、三维点/线/面数据集、CAD数据集、文本数据集、属性数据集。
- 数量限制:一个数据集仅支持创建一个关系类数据集。如数据集A已经与数据集B创建关系数据集,则数据集A或B都不能再与数据集C创建关系数据集。
- 字段类型限制:主键和外键的字段类型必须一致,但不支持二进制和日期字段类型;关系一旦创建,字段名称不可修改,否则将导致关系失效。
- 数据源类型:仅支持PostGIS、UDBX数据源,不支持其他数据源以及内存数据源。
功能入口
- 工作空间管理器->数据源右键菜单->新建数据集->关系数据集。
- 开始选项卡->新建数据集分组->关系数据集。
- 工具箱->数据管理->关系数据集->创建关系数据集。
参数说明
参数名称 | 参数释义 | 参数类型 |
数据源 |
设置两个待关联数据集所在的数据源。默认为工作空间管理器中的选中的数据源,可修改。 |
Datasource |
源数据集 |
设置与关联数据集建立关系的数据集。 如上述例子中的数据集A。 |
String |
关联数据集 |
设置与源数据集建立关系的数据集。 如上述例子中的数据集B。 |
String |
关系类型 |
设置两个数据集对象之间的关联行为,提供弱关联和强关联两种。
|
String |
关系模型 |
设置两个数据集对象之间关联的逻辑模型,包括一对一(1:1)、一对多(1:N)、多对多(M:N)。
|
RelationshipCardinalityType |
消息方向 |
设置消息传递方向可决定关联操作的通知范围。以正向(从源到关联)且关系类型为强关联为例:若删除源数据集中的对象A,系统将向关联数据集发送删除通知,并自动删除其中的相关对象;而删除关联数据集中的对象时,则不会向源数据集发送通知,也不会引发任何源数据集上的操作。 当前版本暂不支持相关操作,仅支持创建关系。 提供如下选项:
|
NotificationType |
正向关系标签 | 设置从源数据集关联到关联数据集时的关系描述。设置后可通过对象属性面板查看。 | String |
反向关系标签 | 设置从关联数据集关联到源数据集时的关系描述。设置后可通过对象属性面板查看。 | String |
关系数据集 |
设置生成的关系数据集名称,默认为“源数据集名称_关联数据集名称”。其命名规则与普通数据集命名规则一致。 |
String |
关系属性化 |
指定关系数据集是否具有属性,即是否需要通过编辑关系数据集属性表来具体定义两个数据集对象之间的关联关系。
|
Boolean |
源主键 |
在非关系属性化的一对一和一对多关系中,源主键为源数据集中与关联数据集相关联的字段。而在关系属性化或多对多关系中,源主键为源数据集中与关系数据集相关联的字段。 默认为源数据集的第一个字段,可在下拉菜单中选择对应的字段。 如上述例子中,数据集A的“不动产单元号”字段。 |
String |
源外键 |
在非关系属性化的一对一和一对多关系中,源外键为关联数据集中与源数据集相关联的字段。如上述例子中,数据集B的“不动产单元号”字段。 而在关系属性化或多对多关系中,源外键为关系数据集中与源数据集相关联的字段。该字段名称需手动输入,编辑时应符合字段命名规则,如不含非法字符、不以“sm”两个连续字母作为开头等。 |
String |
关联主键 | 在关系属性化或多对多关系中,关联主键为关联数据集中与关系数据集相关联的字段。 | String |
关联外键 | 在关系属性化或多对多关系中,关联外键为关系数据集中与关联数据集相关联的字段。该字段名称需手动输入,编辑时应符合字段命名规则,如不含非法字符、不以“sm”两个连续字母作为开头等。 | String |
输出结果
在数据源节点下新增关系数据集。