ArcGIS 中的所有图层(包括查询图层、地理数据库中的图层和数据库中的图层)都需要唯一的标识符。
如果针对单个地理数据库表或要素类定义查询图层,请使用 ObjectID 字段作为唯一标识符字段。
不过,在大多数情况下,您可以创建查询图层来访问数据库中的要素类和表,或者也可以将数据库图层直接拖动到 ArcGIS Desktop 客户端的地图中。数据库表通常会包含一个唯一的标识符字段;因此您的数据库表很可能已经包含了一个可以用作唯一标识符的字段。如果是这样,则 ArcMap 将检测到合格字段并将其设置为唯一标识符。
要在 ArcGIS 桌面应用程序中使用某字段作为唯一标识符,该字段必须不为空、包含唯一值,并且属于以下数据类型之一:
- 整型(仅限正值)
- 字符串
- GUID
- 日期
该字段中的值必须始终唯一且不为空。您必须确字段中的值满足这些要求。
如果 ArcGIS 检测不到合格的唯一标识符,就会在您将数据库表拖动到 ArcMap 中或验证新查询图层定义时提示您选择使用一个或多个字段。在本例中,ArcGIS 无法找到整型非空字段用作唯一标识符。您必须选择一个您确定非空且唯一的字段或字段组合用作表中各行的唯一标识符。
如果存在合适的字段,当您从目录树中拖动数据库表并将其放在 ArcMap 中或验证查询图层定义时,ArcGIS 会默认将其找到的第一个非空字段作为唯一标识符字段。此字段的值通常为适宜用作唯一标识符字段的值,不过,您也可以从唯一标识符字段列表中选择另一个合适的字段或字段组用作唯一标识符字段。如果您希望选择自己的唯一标识符,则可以修改查询图层。