Типы данных global ID и GUID содержат реестр строк стилей (registry style strings), состоящий из 36 символов, заключенных в круглые скобки. Эти строки уникально определяют объект или запись таблицы внутри и вне базы геоданных. Global ID используются для поддержки уникальности записей в односторонней или двусторонней репликах базы геоданных и неверсионных данных, использующихся в автономных картах. Идентификаторы GUID могут добавляться к любой таблице.
Однако если таблица, которую вы хотите отредактировать, участвует в репликации или автономных картах либо содержит столбец GUID, то вам необходимо вставить уникальное значение в столбец global ID или GUID, когда вы добавляете новую запись в таблицу, используя SQL. Для этого воспользуйтесь функцией sde.next_globalid.
При редактировании неверсионной таблицы, не включенной для архивирования, используйте функцию для непосредственной вставки ID в таблицу. При редактировании неверсионной таблицы, не включенной для архивирования, используйте функцию для непосредственной вставки ID в архивное представление таблицы. При редактировании версионной таблицы используйте функцию для вставки значения в версионное представление таблицы.
- Войдите в базу данных из командной строки SQL как пользователь с правами на редактирование таблицы.
Если вы редактируете через версионное или архивное представление, у пользователя должны быть права редактирования данных.
- При добавлении записи используйте функцию sde.next_globalid, чтобы вставить следующее значение global ID. Поскольку это таблица базы геоданных, она также содержит ObjectID. Используйте функцию sde.next_rowid для вставки значения в поле ObjectID.
--Get next ObjectID CALL sde.next_rowid('JASON', 'ASSETS', ?, ?, ?); Value of output parameters Parameter Name : O_ROWID Parameter Value : 49999 Parameter Name : O_MSGCODE Parameter Value : 0 Parameter Name : O_MESSAGE Parameter Value : Procedure successfully completed. Return Status = 1 --Insert record INSERT INTO jason.assets (objectid, asset_id, globalid) VALUES (49999, 57, sde.next_globalid);
- По завершению редактирования примените внесенные изменения к базе данных.