All layers in ArcGIS—including query layers, layers from geodatabases, and layers from databases—require a unique identifier.
To use a field as a unique identifier in ArcGIS desktop apps, the field must be not null, must contain unique values, and be one of the following data types:
- String
- GUID
- Date
Values in the field must always be unique and not null. It is your responsibility to guarantee that values in this field meet these requirements.
Note:
You will receive an error if ArcGIS encounters a null value, but ArcGIS does not enforce the uniqueness of values in the unique identifier field used in a query layer or database table. If ArcGIS encounters a nonunique value, no error is returned; however, you may see inconsistent results in selection sets or other queries in ArcGIS.
To publish the query layer in a feature layer (a feature service) that references the registered data store, the ID must be a single, not null, unique, autoincrementing, 32-bit, integer field.