Для всех слоев в ArcGIS необходим уникальный идентификатор. Следовательно, слой на основе запроса тоже должен содержать уникальный идентификатор.
Если вы определили слой запроса в таблице или в классе пространственных объектов базы геоданных, таблица всегда будет содержать поле уникального идентификатора: поле ObjectID.
Как правило, вы создаете слои запросов для доступа к классам объектов и таблицам базы данных. Для таблиц баз данных является обычным явлением наличие поля уникального идентификатора. Поэтому таблицы базы данных, скорее всего, уже содержат поле, значения которого вы сможете использовать в качестве уникальных идентификаторов.
Для использования в качестве поля уникальных идентификаторов, поле не должно содержать пустые значения (null), должно иметь только уникальные значения и быть типа:
- целое (только положительные значения)
- Строка
- GUID
- Дата
Значения, однозначно идентифицирующие объекты или строки в ArcGIS, должны быть уникальными и должны присутствовать. Вы обязаны гарантировать, что данные этого поля удовлетворяют этим требованиям.
Если ArcGIS не найдет подходящего уникального идентификатора, вам будет предложено выбрать одно или несколько полей при перетаскивании таблицы базы данных в ArcMap или при проверке определения нового слоя запросов. В этом примере ArcGIS не находит поля с целочисленными непустыми значениями, которые можно было бы использовать в качестве уникальных идентификаторов. Вам необходимо выбрать одно или несколько полей с непустыми уникальными значениями, которые будут использоваться в качестве уникальных идентификаторов записей в таблице.
Если подходящее поле существует, ArcGIS по умолчанию считает первое поле с непустыми значениями полем с уникальными идентификаторами, когда вы перетаскиваете таблицу из дерева Каталога в ArcMap или проверяете определение слоя запросов. Часто это поле оказывается подходящим для его использования в качестве поля уникальных идентификаторов. Однако, вы можете все равно выбрать одно или несколько полей из списка Поля уникального идентификатора для использования вместо заданного по умолчанию поля. Следуйте данным шагам, чтобы изменить поля уникальных идентификаторов, используемые ArcGIS для вашей таблицы базы данных:
- В ArcMap, щелкните правой кнопкой мыши слой в таблице cсодержания и выберите Свойства.
- Перейдите на закладку Источник и выберите Изменить запрос.
Откроется диалоговое окно Редактировать слой запроса.
- Щелкните Показать дополнительные параметры и нажмите Далее.
- Выберите другое поле или несколько полей, которые будут использоваться для хранения уникальных идентификаторов, и щелкните Готово.
- Нажмите на кнопку ОК, чтобы закрыть диалоговое окно Свойства слоя.