GlobalID_Name

Определение

GlobalID_Name получает таблицу в качестве входного параметра и возвращает имя поля globalID в таблице.

Поле globalID добавляется, чтобы позволить таблице участвовать в репликации базы геоданных и для автономного использования карты. Функция GlobalID_Name не возвращает имен других полей GUID.

Вы можете использовать GlobalID_Name, если ваши поля глобального идентификатора созданы программным методом с помощью ArcObjects и вы не уверены в имени созданного поля. Если вы добавили поле глобального идентификатора к таблице с помощью ArcGIS for Desktop или инструмента геообработки Добавить Global ID (Add Global IDs) либо скрипта Python, именем поля всегда будет globalid; поэтому вам не нужно использовать GlobalID_Name для получения имени поля.

Если таблица не имеет поля globalID, то возвращается пустая строка. Если таблица не зарегистрирована в базе геоданных или не существует, будет возвращено сообщение, показывающее, что таблица не зарегистрирована в базе геоданных; может быть также возвращена строка null.

Синтаксис

<geodatabase administrator schema>.globalid_name (<table owner>, <table name>)

В большинстве баз геоданных для схемы администратора базы геоданных используется sde. Однако для баз геоданных с dbo-схемой в SQL Server это dbo, а для баз геоданных с пользовательской схемой в Oracle - это имя пользовательской схемы.

Тип возврата

Строка

Примеры

Далее следуют примеры использования функции GlobalID_Name для всех типов баз данных, поддерживающих ее.

В первом примере выполняется запрос к имени поля глобального идентификатора таблицы signs, принадлежащей insp3.

Второй пример выполняет запрос для получения имени столбца globalID в таблице addresses, владельцем которой является planner. Таблица не содержит столбца globalID.

В третьем примере выполняется запрос к имени поля глобального идентификатора таблицы partners, которой владеет insp3. Таблица partners не зарегистрирована в базе геоданных.

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

Связанные темы

5/25/2014