Типы данных global ID и GUID содержат реестр строк стилей (registry style strings), состоящий из 36 символов, заключенных в круглые скобки. Эти строки уникально определяют объект или запись таблицы внутри и вне базы геоданных. Global ID используются для поддержки уникальности записей в односторонней или двусторонней репликах базы геоданных и неверсионных данных, использующихся в автономных картах. Идентификаторы GUID могут добавляться к любой таблице.
Однако если таблица, которую вы хотите отредактировать, участвует в репликации или автономных картах либо содержит столбец GUID, то вам необходимо вставить уникальное значение в столбец global ID или GUID, когда вы добавляете новую запись в таблицу, используя SQL. Для этого воспользуйтесь утилитой sde.gdb_util.next_globalid.
При редактировании неверсионной таблицы, не включенной для архивирования, используйте утилиту для непосредственной вставки ID в таблицу. При редактировании неверсионной таблицы, не включенной для архивирования, используйте утилиту для непосредственной вставки ID в архивное представление таблицы. При редактировании версионной таблицы используйте утилиту для вставки значения в версионное представление таблицы.
- Откройте SQL редактор, например SQL*Plus.
- Подключитесь к базе данных, как пользователь с правами для редактирования таблицы.
Если вы редактируете через версионное или архивное представление, у пользователя должны быть права редактирования данных.
- При вставке записи используйте функцию sde.gdb_util.next_globalid, чтобы вставить следующее значение global ID или GUID.
В этом примере запись добавляется в версионное представление mytable. Таблица содержит столбцы ObjectID и ST_Geometry.
INSERT INTO user22.mytable (objectid, globalid, shape) VALUES ( sde.gdb_util.next_rowid('USER22', "MYTABLE'), sde.gdb_util.next_globalid(), (sde.st_polygon('polygon ((10000 520000, 100008889 55000, 1045545983 234280934, 10000 520000))',4326)) );
- По завершению редактирования примените внесенные изменения к базе данных.