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.
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:
- El dataset no participa en funciones de la geodatabase como la anotación, la replicación, las redes, las estructuras de parcelas, las clases de relación, los datasets esquemáticos, los subtipos, los dominios, los terrenos o la topología.
- El dataset no está registrado como versionado.
- El dataset no está habilitado para el archivado.
- El dataset no contiene ninguna columna con tipos de datos de geometría binaria ni ArcSDE XML.
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 determinada funcionalidad de la geodatabase. Si Is_Simple devuelve False, se pueden ejecutar sentencias 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 para su uso con el versionado tradicional, puede usar una vista versionada para consultarlo y ver los datos en las tablas base, de adiciones y de borrados sin tener que escribir complejas sentencias de unión. Una vista versionada se crea al registrar el dataset como versionado.
Si desea editar un dataset de versionado tradicional 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 su dataset está registrado o no para participar en el versionado tradicional. En caso afirmativo, utilice la función Version_View_Name para determinar el nombre de la vista versionada.
Si sus datos están registrados para su uso con el versionado en rama, no edite con SQL.
Si el dataset no está registrado como versionado pero está habilitado para archivado
Si el dataset no está registrado para participar en el versionado tradicional, pero tiene habilitado el 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. De este modo, se actualizan automáticamente los campos que rastrean cuándo se actualizó una entidad o un registro, así como el campo Id. de objeto.
Si la función Is_Versioned devuelve False y tiene la certeza de que el dataset no está registrado para participar en el versionado en rama, utilice la función Is_Archive_Enabled para determinar si el dataset está habilitado para el 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 almacenamiento de geometría binaria o XML de ArcSDE, debe construir su consulta de tal forma que incluya las tablas asociadas requeridas y unirlas con las columnas correctas para consultar la información en 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.