Un esquema es la estructura o el diseño de una base de datos o un objeto de base de datos, como una clase de entidad o tabla. Un bloqueo de esquema significa que otra aplicación está accediendo a una base de datos y que no se le permite alterar su estructura agregando o quitando campos. La causa más común del bloqueo de esquema es la visualización de un dataset en ArcMap.
Existen cuatro reglas que resumen el comportamiento de las herramientas de geoprocesamiento y secuencias de comandos cuando se utilizan datos a los que se puede acceder simultáneamente a través de otras aplicaciones.
- Las herramientas siempre pueden crear nuevos datos en un espacio de trabajo de salida, incluso si el espacio de trabajo de salida tiene un bloqueo de esquema. Un ejemplo de esto es la creación de una clase de entidad en un dataset de entidades a través de la herramienta Crear clase de entidad en ArcCatalog mientras ArcMap está accediendo al dataset de entidades.
- Las herramientas que actualizan el esquema de un dataset siempre respetarán los bloqueos aplicados por otras aplicaciones de ArcGIS que estén accediendo al dataset. Por ejemplo, si se está mostrando una clase de entidad de carreteras en una sesión de ArcMap, la herramienta Agregar campo mostrará un error si se ejecuta desde otra sesión de ArcMap que utiliza la misma clase de entidad de carreteras como entrada. La herramienta mostrará un mensaje de error, que indicará que otro usuario está accediendo a los datos.
- Las secuencias de comandos siempre pueden actualizar el esquema de los datos creados por las herramientas dentro de la misma secuencia de comandos, incluso si otra aplicación está utilizando el espacio de trabajo actual. Por ejemplo, una herramienta de secuencia de comandos puede crear una clase de entidad en una geodatabase personal a la que esté accediendo la aplicación que la invoca, como ArcMap. Generalmente, las geodatabases personales no permiten que ningún otro proceso realice cambios de esquema en ningún dataset una vez que está abierto, pero la herramienta de secuencia de comandos podrá realizar un cambio de esquema en la clase de entidad que creó anteriormente.
- Las secuencias de comandos y las herramientas de secuencia de comandos no pueden modificar el esquema de los datos a los que estén accediendo otras aplicaciones o secuencias de comandos. Esto incluye los datos introducidos desde una aplicación, como ArcMap, a una herramienta de secuencia de comandos, por lo que una herramienta de secuencia de comandos no puede agregar ni eliminar un campo de una capa introducida a ella como parámetro.