Is_Versioned

Определение

Is_Versioned получает таблицу в качестве входного параметра и возвращает TRUE, если таблица зарегистрирована как версионная. Если таблица не зарегистрирована как версионная, Is_Versioned возвращает значение FALSE. Если таблица не зарегистрирована в базе геоданных, будет возвращено сообщение об этом. Вы также получите сообщение о том, что таблица не зарегистрирована в базе геоданных, если вы предоставите имя таблицы, не существующей в базе данных (например, если вы неправильно ввели ее название), поскольку функция Is_Versioned проверяет только наличие или отсутствие таблицы в системной таблице TABLE_REGISTRY.

Синтаксис

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

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

Тип возврата

Строка

Примеры

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

Первый пример выполняет запрос к таблице laterals, владельцем которой является tech3, чтобы определить, является ли таблица версионной.

Второй пример выполняет запрос к таблице crews, владельцем которой является crewboss, чтобы определить, является ли таблица версионной. Таблица Crews не является версионной; поэтому возвращается значение FALSE.

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

DB2

VALUES sde.is_versioned('TECH3', 'LATERALS')

TRUE
VALUES sde.is_versioned('CREWBOSS', 'CREWS')

FALSE
VALUES sde.is_versioned('DENTRY', 'SERVICE_AREAS')

Application raised error or warning with diagnostic text: 
"MYDB.DENTRY.SERVICE_AREAS is not registered to the geodatabase".

Oracle

SELECT sde.gdb_util.is_versioned('TECH3', 'LATERALS')
FROM DUAL;

SDE.GDB_UTIL.IS_VERSIONED('TECH3', 'LATERALS')
--------------------------------------------------
TRUE
SELECT sde.gdb_util.is_versioned('CREWBOSS', 'CREWS')
FROM DUAL;

SDE.GDB_UTIL.IS_VERSIONED('CREWBOSS', 'CREWS')
--------------------------------------------------
FALSE
SELECT sde.gdb_util.is_versioned('DENTRY', 'SERVICE_AREAS')
FROM DUAL;

SDE.GDB_UTIL.IS_VERSIONED('DENTRY', 'SERVICE_AREAS')
----------------------------------------------------

NOT REGISTERED

PostgreSQL

SELECT sde.is_versioned('tech3', 'laterals');

TRUE
SELECT sde.is_versioned('crewboss', 'crews');

FALSE
SELECT sde.is_versioned('dentry', 'services_areas');

NOT REGISTERED

SQL Server

SELECT dbo.is_versioned('tech3', 'laterals');

TRUE
SELECT dbo.is_versioned('crewboss', 'crews');

FALSE
SELECT dbo.is_versioned('dentry', 'services_areas');

NOT REGISTERED

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

5/25/2014