Mit den Datentypen "Global ID" und "GUID" werden Zeichenfolgen aus 36 Zeichen gespeichert (ähnlich denen in der Registrierung), die in geschweifte Klammern eingeschlossen sind. Mit diesen Zeichenfolgen werden Features oder Tabellenzeilen innerhalb einer Geodatabase oder Geodatabase-übergreifend eindeutig gekennzeichnet. Global IDs werden verwendet, um die Eindeutigkeit von Datensätzen in unidirektionalen und bidirektionalen Geodatabase-Replikaten und nicht versionierten Daten in Offlinekarten beizubehalten. GUIDs können allen Tabellen hinzugefügt werden.
Falls die zu editierende Tabelle in eine Replikation oder Offlinekarte eingebunden ist oder eine GUID-Spalte enthält, müssen Sie einen Einzelwert in die Global ID-Spalte oder die GUID-Spalte einfügen, wenn Sie mit SQL einen neuen Datensatz in die Tabelle einfügen. Verwenden Sie hierzu die Funktion "sde.retrieve_guid()".
Mit der Funktion "sde.retrieve_guid()" können Sie bei der Bearbeitung einer nicht versionierten Tabelle, für die keine Archivierung aktiviert wurde, die ID direkt in die Tabelle einfügen. Fügen Sie die ID bei der Bearbeitung einer nicht versionierten Tabelle, für die die Archivierung aktiviert wurde, in die Archivansicht der Tabelle ein. Wenn Sie eine versionierte Tabelle bearbeiten, verwenden Sie die Funktion, um einen Wert in die versionierte Sicht der Tabelle einzufügen.
Zur Verwendung dieser Funktion in Informix müssen Sie die folgenden Parameter in der Informix-ONCONFIG-Datei festlegen:
VPCLASS jvp,num=1
Nach der Änderung der ONCONFIG-Datei müssen Sie Informix neu starten, damit die Änderungen wirksam werden.
- Melden Sie sich über eine SQL-Eingabeaufforderung als Benutzer mit Berechtigungen zum Bearbeiten der Tabelle bei der Datenbank an.
Wenn Sie die Bearbeitung über eine versionierte Sicht oder Archivansicht durchführen, muss der Benutzer auch über Berechtigungen zum Bearbeiten der Sicht verfügen.
- Wenn Sie einen Datensatz einfügen, verwenden Sie die Funktion "retrieve_guid()", um den nächsten globalen ID-Wert einzufügen.
INSERT INTO jason.assets (asset_id, globalid) VALUES (57, sde.retrieve_guid());
- Übernehmen Sie die Änderungen in die Datenbank, wenn Sie diese abgeschlossen haben.