ArcGIS 中的所有图层(包括查询图层、地理数据库中的图层和数据库中的图层)都需要唯一的标识符。
要在 ArcGIS Pro 中使用某字段作为唯一标识符,该字段必须不为空、必须包含唯一值,并且属于以下数据类型之一:
- 整型(仅限 32 位和 64 位正值)
- 字符串
- GUID
- 日期
- 仅日期
- 仅时间
该字段中的值必须始终唯一且不为空。 您必须确保字段中的值满足这些要求。
注:
ArcGIS 遇到空值时,您将接收到一个错误信息,不过,ArcGIS 并不强制要求查询图层或数据库表中使用的唯一标识符字段中各值的唯一性。 如果 ArcGIS 遇到不唯一的值,它不会返回任何错误;但是,可能会在 ArcGIS 的选择集或其他查询中发现不一致的结果。
如果针对单个企业级地理数据库表或要素类定义查询图层,请使用对象 ID 字段作为唯一标识符字段。
对于关系数据库和云数据仓库,表通常会包含一个唯一的标识符字段;因此您的关系数据库或云数据仓库表很可能已经包含了一个可以用作唯一标识符的字段。 如果要素类或表包含 32 位唯一非空整数,ArcGIS Pro 将检测到合格字段并将其设置为唯一标识符。 此字段的值通常为适宜用作唯一标识符字段的值,不过,您也可以从唯一标识符字段列表中选择另一个合适的字段或字段组用作唯一标识符字段。 要选择唯一标识符,可以修改查询图层。
当添加可在文档数据库中访问表的查询图层时,ArcGIS Pro 将自动使用系统维护的字符串字段 (_id) 作为对象 ID。
要在引用已注册数据存储(关系数据库、云数据仓库或企业级地理数据库)的要素图层(要素服务)中发布查询图层,则 ID 必须是单个、非空、唯一且自动递增的整型字段。 对于一部分受支持的数据库,您可以运行添加增量 ID 字段地理处理工具来添加受支持的 ID 字段。
目前,您无法发布文档数据库中的查询图层。