Acceso SQL a datos de geodatabase corporativa

Puede utilizar las instrucciones nativas SQL del sistema de administración de bases de datos para leer datos de tablas y clases de entidad (llamadas colectivamente datasets) de una geodatabase corporativa. También se puede usar SQL para insertar, eliminar y actualizar valores en datasets sencillos almacenados en una geodatabase corporativa.

NotaNota:

No use SQL para alterar el esquema de los datasets almacenados en una geodatabase corporativa.

Al ejecutar SQL sobre un dataset de geodatabase, se consultan los datos de la tabla base (o de negocio). Si el dataset que consulta cumple los siguientes criterios, basta consultar la tabla base para ver los datos, y puede actualizar los datos, insertar registros o eliminar registros en la tabla base mediante SQL:

En las secciones siguientes se describe lo que se debe hacer si el dataset no cumple estos criterios.

Si el dataset participa en la funcionalidad de la geodatabase

Si los datos a los que se desea acceder participan en la funcionalidad de la geodatabase, debe construir la consulta de manera que incluya las tablas asociadas requeridas y unirlas utilizando las columnas correctas para ver la información de las tablas asociadas.

Puede utilizar la función Is_Simple para determinar si el dataset participa en la funcionalidad de la geodatabase. Si Is_Simple devuelve False, se pueden ejecutar declaraciones SQL SELECT con el dataset, pero no se puede editar el dataset con SQL.

Si el dataset está registrado como versionado

Si el dataset está registrado como versionado, puede usar una vista versionada para consultarlo y ver los datos en las tablas base, de adiciones y borrados sin tener que escribir complejas declaraciones de unión. En ArcGIS 10.1 y en las versiones posteriores, se crea una vista versionada al registrar el dataset como versionado. Para los datasets versionados antes de ArcGIS 10.1 o versionados cuando no disponía de privilegios para crear una vista, puede habilitar el acceso SQL en el menú contextual de la tabla o la clase de entidad en ArcGIS for Desktop creando así una vista versionada.

Si desea editar un dataset versionado con SQL, debe hacerlo mediante una vista versionada. De este modo, las ediciones se escriben en las tablas de adiciones y borrados, y el campo ObjectID se llena cuando se insertan los registros.

La función Is_Versioned se puede usar para determinar si un dataset está registrado como versionado o no. Si está registrado como versionado, utilice la función Version_View_Name para determinar el nombre de la vista versionada.

Si el dataset no está registrado como versionado pero está habilitado para archivado

Si el dataset no está registrado como versionado pero está habilitado para archivado, se crea una vista de archivo al habilitar el archivado.

Si desea usar SQL para editar un dataset no versionado que esté habilitado para archivado, deberá editarlo mediante la vista de archivo. Al hacerlo se actualizan automáticamente los campos que realizan el seguimiento del momento en que se ha actualizado una entidad o un registro y también el campo ObjectID.

SugerenciaSugerencia:

Si no disponía de privilegios para crear una vista en el momento de habilitar el archivado, puede habilitar el acceso SQL (con lo cual se crea una vista de archivo) en el menú contextual de la tabla o la clase de entidad en ArcGIS for Desktop después de obtener los privilegios de creación de vistas en la base de datos.

Si la función Is_Versioned devuelve False, utilice la función Is_Archive_Enabled para determinar si el dataset no versionado está habilitado para archivado. Si está habilitado para archivado, utilice la función Archive_View_Name para determinar el nombre de la vista de archivo, que se puede usar para editar el dataset utilizando SQL.

Si el dataset contiene una columna con geometría binaria o ArcSDE XML

Si los datos a los que desea acceder utilizan el almacenamiento de geometría binaria o ArcSDE XML, deberá construir la consulta de manera que incluya las tablas asociadas requeridas y unirlas utilizando las columnas correctas para ver la información de las tablas asociadas.

No utilice SQL para editar datasets que contengan columnas con tipos de datos de almacenamiento de geometría binaria o ArcSDE XML.

Temas relacionados

5/10/2014