Добавление значения в столбец global ID или GUID в Informix с использованием SQL
Типы данных global ID и GUID содержат реестр строк стилей (registry style strings), состоящий из 36 символов, заключенных в круглые скобки. Эти строки уникально определяют объект или запись таблицы внутри и вне базы геоданных. Global ID используются для поддержки уникальности записей в односторонней или двусторонней репликах базы геоданных и неверсионных данных, использующихся в автономных картах. Идентификаторы GUID могут добавляться к любой таблице.
Однако если таблица, которую вы хотите отредактировать, участвует в репликации или автономных картах либо содержит столбец GUID, то вам необходимо вставить уникальное значение в столбец global ID или GUID, когда вы добавляете новую запись в таблицу, используя SQL. Чтобы сделать это, используйте функцию sde.retrieve_guid().
При редактировании неверсионной таблицы, не включенной для архивирования, вы можете использовать функцию sde.retrieve_guid() для непосредственной вставки ID в таблицу. При редактировании неверсионной таблицы, не включенной для архивирования, вставьте ID в архивное представление таблицы. При редактировании версионной таблицы используйте функцию для вставки значения в версионное представление таблицы.
Чтобы использовать эту функцию в Informix, вы должны установить следующий параметр в ONCONFIG файле Informix:
VPCLASS jvp,num=1
После внесения изменений в файл ONCONFIG необходимо перезапустить Informix, чтобы изменения вступили в силу.
- Войдите в базу данных из командной строки SQL как пользователь с правами на редактирование таблицы.
Если вы редактируете через версионное или архивное представление, у пользователя должны быть права редактирования данных.
-
При добавлении записи используйте функцию retrieve_guid() для добавления следующего значения global ID.
INSERT INTO jason.assets (asset_id, globalid) VALUES (57, sde.retrieve_guid());
- По завершению редактирования примените внесенные изменения к базе данных.