Es posible consultar la columna de definición de la tabla GDB_Items (o la vista GDB_Items_vw en Oracle) para generar una lista de clases de entidad que tiene el valor de versionado definido como True (o como 1, según el tipo de base de datos).
Como se menciona en SQL y geodatabases corporativas, debe crear vistas versionadas para editar datos versionados mediante SQL. Por lo tanto, es recomendable identificar qué clases de entidad están versionadas en una geodatabase, para saber si debe generar vistas versionadas de una clase de entidad antes de editar con SQL.
Las consultas de ejemplo siguientes devuelven una lista de todas las clases de entidad versionadas en la geodatabase en las que se ejecutó la declaración.
--Queries PostgreSQL
--Returns a list of versioned datasets in the specified geodatabase
SELECT name AS "Versioned feature class",
FROM sde.gdb_items
WHERE (xpath('//Versioned/text()', definition))[1]::text = 'true';
--Queries a dbo-schema geodatabase in SQL Server
--Returns a list of versioned datasets in the specified geodatabase
SELECT NAME AS "Versioned feature class" FROM dbo.GDB_ITEMS WHERE Definition.exist('(/*/Versioned)[1]') = 1
AND Definition.value('(/*/Versioned)[1]', 'nvarchar(4)') = 'true'
--Queries Oracle
--Returns a list of versioned datasets in the specified geodatabase
SELECT items.name AS Dataset, itemtypes.name AS Dataset_Type FROM sde.gdb_items_vw items, sde.gdb_itemtypes itemtypes WHERE items.definition LIKE '%Versioned>true%'
AND items.type = itemtypes.uuid;