GlobalID_Name
Определение
GlobalID_Name получает таблицу в качестве входного параметра и возвращает имя поля globalID в таблице.
Поле globalID добавляется, чтобы позволить таблице участвовать в репликации базы геоданных. Функция GlobalID_Name не возвращает другие поля GUID.
Если таблица не имеет поля globalID, то возвращается пустая строка. Если таблица не зарегистрирована в базе геоданных или не существует, будет возвращено сообщение, показывающее, что таблица не зарегистрирована в базе геоданных; может быть также возвращена строка null.
Синтаксис
<geodatabase administrator schema>.globalid_name (<table owner>, <table name>)
В большинстве баз геоданных, схемой администратора базы геоданных является sde. Однако для баз геоданных с dbo-схемой в SQL Server это dbo, а для баз геоданных с пользовательской схемой в Oracle - это имя пользовательской схемы.
Тип возврата
Строка
Примеры
Следующие примеры демонстрируют использование функции GlobalID_Name для каждого типа базы данных.
Первый пример выполняет запрос для получения имени столбца globalID в таблице signs, владельцем которой является insp3.
Второй пример выполняет запрос для получения имени столбца globalID в таблице addresses, владельцем которой является planner. Таблица не содержит столбца globalID.
Третий пример выполняет запрос для получения имени столбца globalID в таблице businesses, владельцем которой является insp3. Таблица businesses не зарегистрирована в базе геоданных.
DB2
VALUES sde.globalid_name('INSP3', 'SIGNS')
GlobalID
VALUES sde.globalid_name('PLANNER', 'ADDRESSES')
VALUES sde.globalid_name('INSP3', 'BUSINESSES')
Oracle
SELECT sde.gdb_util.globalid_name('INSP3', 'SIGNS')
FROM DUAL;
SDE.GDB_UTIL.GLOBALID_NAME('INSP3', 'SIGNS')
--------------------------------------------------
GLOBALID
SELECT sde.gdb_util.globalid_name('PLANNER', 'ADDRESSES')
FROM DUAL;
SDE.GDB_UTIL.GLOBALID_NAME('PLANNER', 'ADDRESSES')
--------------------------------------------------
SELECT sde.gdb_util.globalid_name('INSP3', 'BUSINESSES')
FROM DUAL;
SDE.GDB_UTIL.GLOBALID_NAME('INSP3', 'BUSINESSES')
--------------------------------------------------
ORA-20220: Class INSP3.BUSINESSES not registered to the Geodatabase.
PostgreSQL
SELECT sde.globalid_name('insp3', 'signs');
globalid
SELECT sde.globalid_name('planner', 'addresses');
SELECT sde.globalid_name('insp3', 'businesses');
NOT REGISTERED
SQL Server
SELECT sde.globalid_name('insp3', 'signs');
GlobalID
SELECT sde.globalid_name('planner', 'addresses');
NULL
SELECT sde.globalid_name('insp3', 'businesses');
NOT REGISTERED