Definition
"GlobalID_Name" verwendet eine Tabelle als Eingabeparameter und gibt den Namen des Feldes "Globale ID" in der Tabelle zurück.
Das Feld "Globale ID" wird hinzugefügt, damit die Tabelle in die Geodatabase-Replikation oder Offline-Kartenverwendung eingebunden werden kann. Die Funktion "GlobalID_Name" gibt keine Namen von GUID-Feldern zurück.
Verwenden Sie "GlobalID_Name", wenn die Felder "Globale ID" programmgesteuert mit ArcObjects erstellt werden und Sie sich nicht sicher sind, welchen Namen ein erstelltes Feld hat. Wenn Sie das Feld "Globale ID" mit ArcGIS for Desktop oder dem Geoverarbeitungswerkzeug oder Python-Skript Globale IDs hinzufügen zur Tabelle hinzugefügt haben, lautet der Name des Feldes immer "globalid" und Sie müssen ihn nicht mit "GlobalID_Name" ermitteln.
Eine leere Zeichenfolge wird zurückgegeben, wenn die Tabelle kein Feld "Globale ID" enthält. Falls die Tabelle nicht in der Geodatabase registriert ist oder gar nicht vorhanden ist, wird eine Meldung angezeigt, die darauf hinweist, dass die Tabelle nicht in der Geodatabase registriert ist. Eine leere Zeichenfolge kann auch zurückgegeben werden.
Syntax
<geodatabase administrator schema>.globalid_name (<table owner>, <table name>)
Bei den meisten Geodatabases lautet das Geodatabase-Administrator-Schema "sde". Im Falle von DBO-Schema-Geodatabases in SQL Server lautet das Schema "dbo", und bei Benutzerschema-Geodatabases in Oracle ist dies der Name des Benutzerschemas.
Rückgabetyp
String
Beispiele
Nachfolgend finden Sie Beispiele für die Verwendung der Funktion "GlobalID_Name" in allen Datenbanktypen, in denen sie unterstützt wird.
Im ersten Beispiel wird der Name des Feldes "Globale ID" in der Tabelle "signs" abgefragt, die im Besitz von "insp3" ist.
Im zweiten Beispiel wird der Name des Feldes "Globale ID" in der Adressentabelle abgefragt, die im Besitz des Planers ist. Die Tabelle enthält keine Global ID-Spalte.
Im dritten Beispiel wird der Name des Feldes "Globale ID" in der Tabelle "partners" abgefragt, die im Besitz von "insp3" ist. Die Tabelle "partners" ist nicht in der Geodatabase registriert.
DB2
VALUES sde.globalid_name('INSP3', 'SIGNS')
SIGNID
VALUES sde.globalid_name('PLANNER', 'ADDRESSES')
VALUES sde.globalid_name('INSP3', 'PARTNERS')
Oracle
SELECT sde.gdb_util.globalid_name('INSP3', 'SIGNS')
FROM DUAL;
SDE.GDB_UTIL.GLOBALID_NAME('INSP3', 'SIGNS')
--------------------------------------------------
SIGNID
SELECT sde.gdb_util.globalid_name('PLANNER', 'ADDRESSES')
FROM DUAL;
SDE.GDB_UTIL.GLOBALID_NAME('PLANNER', 'ADDRESSES')
--------------------------------------------------
SELECT sde.gdb_util.globalid_name('INSP3', 'PARTNERS')
FROM DUAL;
SDE.GDB_UTIL.GLOBALID_NAME('INSP3', 'PARTNERS')
--------------------------------------------------
ORA-20220: Class INSP3.PARTNERS not registered to the Geodatabase.
PostgreSQL
SELECT sde.globalid_name('insp3', 'signs');
signid
SELECT sde.globalid_name('planner', 'addresses');
SELECT sde.globalid_name('insp3', 'partners');
NOT REGISTERED
SQL Server
SELECT sde.globalid_name('insp3', 'signs');
SignID
SELECT sde.globalid_name('planner', 'addresses');
SELECT sde.globalid_name('insp3', 'partners');
NOT REGISTERED