Disponible con una licencia Standard o Advanced.
Puede ejecutar las declaraciones SQL SELECT contra vistas versionadas para acceder a los datos versionados.
Leer la versión Default
Al ejecutar declaraciones SQL en la versión Default, tiene dos opciones: leer la última o leer un estado de versión especificado.
Leer el estado más reciente de la versión Default
Las vistas versionadas acceden automáticamente al estado actual de la versión Default. Si ejecuta las declaraciones SELECT en una vista versionada, tendrá acceso al estado de Default en el momento de ejecutar la declaración. Si otros usuarios están guardando ediciones en la versión Default (cambiando así el estado al que la versión Default hace referencia), sus consultas subsiguientes verán el último estado y las ediciones de los usuarios.
Leer un estado de versión específico
Si desea consultar un estado específico de la versión Default y no desea que el estado cambie durante las consultas, ejecute la utilidad version_util.set_current_version. Este procedimiento valida el nombre de versión proporcionado y configura internamente el estado de la base de datos correspondiente. Si ejecuta version_util.set_current_version para la versión Default, las consultas realizadas en Default señalarán siempre al estado al que Default hacía referencia cuando se ejecutó la utilidad version_util.set_current_version.
Version_util.set_current_version se puede ejecutar directamente desde un cliente de SQL. La sintaxis es la siguiente:
EXEC sde.version_util.set_current_version('<version_name>')
- Asegúrese de que hay una vista versionada para la clase de entidad versionada o tabla a la que desea obtener acceso.
A partir de ArcGIS 10.1, las vistas versionadas se crean cuando usted versiona datos. Si los datos se registraron como versionados antes de la versión 10.1, puede crear una vista versionada haciendo clic con el botón derecho en el dataset en el árbol de catálogo en ArcMap, seleccionando Administrar y haciendo clic en Habilitar acceso SQL.
- En una ventana de SQL, ejecute la utilidad version_util.set_current_version para establecer la versión en Default.
EXEC sde.version_util.set_current_version('DEFAULT')
- Emita la declaración SELECT contra la vista versionada para leer los datos versionados desde la geodatabase.
En este ejemplo, la vista versionada es sightings_ev.
SELECT ID, SPECIES, REPORTER FROM SIGHTINGS_EV WHERE REPORTER = 'CHUCK';
Leer una versión distinta de Default
También puede ejecutar la utilidad set_current_version para consultar una versión distinta de Default. Esta utilidad valida el nombre de versión especificado y configura internamente el estado de versión correspondiente. Las consultas que realiza en la versión siempre señalan el estado al que la versión hacía referencia cuando ejecutó sde.version_util.set_current_version.
Esta utilidad se puede invocar otra vez para cambiar a otras versiones según se requiera, y se puede invocar cada vez que el espacio de trabajo se actualice para devolver el estado actual de la tabla versionada a la aplicación que la invoca.
En los pasos siguientes se muestra cómo ejecutar version_util.set_current_version para consultar una versión específica distinta de Default:
- Asegúrese de que hay una vista versionada para la clase de entidad versionada o tabla a la que desea obtener acceso.
A partir de ArcGIS 10.1, las vistas versionadas se crean cuando usted versiona datos. Si los datos se versionaron antes de la 10.1, puede crear una vista versionada haciendo clic con el botón derecho en el dataset, seleccionando Administrar y haciendo clic en Habilitar acceso SQL.
- En una ventana de SQL, ejecute la utilidad version_util.set_current_version para establecer la versión que desea consultar.
En este ejemplo, FIELD_INSPECTIONS se establece como la versión que se va a consultar en la geodatabase maestra sde. Si ejecuta esta contra una versión en una geodatabase de esquema del usuario, la utilidad se antecede con el nombre del propietario de la geodatabase.
EXEC sde.version_util.set_current_version('FIELD_INSPECTIONS')
- Emita la declaración SELECT contra la vista versionada para leer los datos versionados desde la geodatabase.
En este ejemplo, la vista versionada es code_ev.
SELECT violationID,codenum,propowner,insp_date FROM code_ev WHERE zip = '99999';
Si necesita volver a consultar el estado actual de la versión Default, ejecute el procedimiento set_default.
CALL sde.version_util.set_default();