SQL0900N | Hay un error en el estado de la aplicación. No hay ninguna conexión con la base de datos. |
Explicación: No hay ninguna conexión a una base de datos. Esto puede ser debido a uno de los siguientes motivos:
Respuesta del usuario: Vuelva a establecer una conexión conmutando a una conexión existente suspendida (utilizando CONNECT TO o SET CONNECTION) o establezca una nueva conexión (mediante CONNECT).
sqlcode: -900
sqlstate: 08003
SQL0901N | La sentencia de SQL ha fallado debido a un error del sistema que no es grave. Las siguientes sentencias de SQL posteriores pueden procesarse. (Código de razón "<razón>".) |
Explicación: Se ha producido un error debido a un error del sistema. Se ha interrumpido el proceso de la sentencia de SQL por la razón "<razón>" (sólo está disponible en inglés y va dirigido al personal de soporte de IBM).
Respuesta del usuario: Anote el número de mensaje (SQLCODE) y la razón "<razón>".
Si estaba activo un rastreo, llame al Recurso de Rastreo Independiente (Independent Trace Facility) desde el indicador de mandatos del sistema operativo. Consulte el Recurso de Rastreo Independiente en la publicación Troubleshooting Guide para obtener información sobre cómo utilizar este recurso. A continuación, póngase en contacto con el representante del servicio técnico con la siguiente información:
Usuarios del sistema federado: localice el problema en la fuente de datos que impide procesar la petición (consulte la publicación Problem Determination Guide para determinar qué fuente de datos impide procesar la sentencia de SQL) y siga los pasos de diagnóstico pertinentes para esa fuente de datos. Los procedimientos para la determinación de problemas correspondientes a las fuentes de datos pueden variar, por consiguiente, consulte los manuales de fuente de datos pertinentes.
sqlcode: -901
sqlstate: 58004
SQL0902C | Se ha producido un error del sistema (código de razón = "<código-razón>"). No pueden procesarse las sentencias de SQL posteriores. |
Explicación: Se ha producido un error del sistema.
Respuesta del usuario: Anote el número de mensaje (SQLCODE) y el código de razón de este mensaje.
Si estaba activo un rastreo, llame al Recurso de Rastreo Independiente (Independent Trace Facility) desde el indicador de mandatos del sistema operativo. Consulte el Recurso de Rastreo Independiente en la publicación Troubleshooting Guide para obtener información sobre cómo utilizar este recurso. A continuación, póngase en contacto con el representante del servicio técnico con la siguiente información:
Usuarios del sistema federado: localice el problema en la fuente de datos que impide procesar la petición (consulte la publicación Problem Determination Guide para determinar qué fuente de datos impide procesar la sentencia de SQL) y siga los pasos de diagnóstico pertinentes para esa fuente de datos. Los procedimientos para la determinación de problemas correspondientes a las fuentes de datos pueden variar, por consiguiente, consulte los manuales de fuente de datos pertinentes.
sqlcode: -902
sqlstate: 58005
SQL0903N | La sentencia COMMIT ha dado un error, se ha retrotraído la transacción. Código de razón: "<código-razón>" |
Explicación: Uno o más de los servidores que participan en la unidad de trabajo actual no han podido preparar la base de datos que se debía confirmar. La sentencia COMMIT ha dado un error y se ha retrotraído la transacción.
Los códigos de razón posibles son:
Usuarios del sistema federado: Si la base de datos a la que está conectado es una base de datos del servidor federado donde se utilizan apodos, significa que se ha perdido una conexión con una de las fuentes de datos necesarias para un apodo dentro de la base de datos.
Usuarios del sistema federado: Si la base de datos a la que está conectado es una base de datos del servidor federado en la que se utilizan apodos, una de las fuentes de datos necesarias para un apodo no puede preparar una confirmación.
Respuesta del usuario: Si se ha perdido una conexión a una base de datos, vuelva a establecer dicha conexión. Si el error no está relacionado con conexiones, consulte los registros cronológicos de diagnóstico de errores del sistema remoto para determinar la naturaleza del error y la acción correctiva necesaria. Vuelva a ejecutar la aplicación.
sqlcode: -903
sqlstate: 40504
SQL0904N | La ejecución no ha sido satisfactoria porque faltaba un recurso. Código de razón: "<código-razón>", tipo de recurso: "<tipo-recurso>" y nombre de recurso: "<nombre-recurso>". |
Explicación: La sentencia de SQL no se ha podido ejecutar porque el recurso "<nombre-recurso>" de tipo "<tipo-recurso>" no estaba disponible en ese momento por la razón indicada por el "<código-razón>". Si desea obtener una relación de los códigos de tipos de recursos, consulte la documentación Determinación de Problemas de DB2 para MVS.
Respuesta del usuario: Compruebe la identidad del recurso que no estaba disponible. Para determinar por qué el recurso no estaba disponible, consulte el "<código-razón>" especificado.
sqlcode: -904
sqlstate: 57011
SQL0905N | La ejecución no ha sido posible porque se ha sobrepasado el límite de un recurso. Nombre de recurso = "<nombre-recurso>", límite = "<límite-cantidad1>" segundos de CPU ("<límite-cantidad2>" unidades de servicio) procedente de "<fuente-límite>". |
Explicación: La ejecución de la sentencia de SQL ha terminado de forma anómala porque se ha sobrepasado un límite de recursos.
El nombre del recurso cuyo límite se ha excedido es "<nombre-recurso>". También es el nombre de la columna de la tabla de especificación de límites de recursos, de la cual deriva el límite en cuestión. El límite que se ha excedido en segundos de CPU es "<cantidad-límite1>" y en unidades de servicio es "<cantidad-límite2>". El "<nombre-recurso>" puede ser ASUTIME, que es el número de segundos de CPU admitidos por cada sentencia de SQL. El número máximo de segundos de CPU admitido es "<cantidad-límite1>". El número máximo en unidades de servicio es "<cantidad-límite2>".
La fuente empleada para deducir la cantidad-límite es "<fuente-límite>" y es el nombre de la tabla de especificación de límites de recursos o un 'parámetro del sistema'. Si la fuente es un parámetro del sistema, significa que la tabla de especificación de límites de recursos no contenía ninguna entrada aplicable o bien que se ha producido un error al acceder a la tabla. En cualquier caso, el límite se ha obtenido de un parámetro de instalación (del sistema).
Respuesta del usuario: Determine por qué esta sentencia de SQL ha sido tan larga y tome las medias oportunas. Observe las posibilidades siguientes: simplificar la sentencia de SQL, reestructurar las tablas e índices o ponerse en contacto con el responsable del grupo de instalación a fin de mantener las tablas de especificación de los límites de recurso.
Un programa de aplicación que recibe este código de retorno puede ejecutar sentencias de SQL adicionales.
sqlcode: -905
sqlstate: 57014
SQL0906N | La sentencia de SQL no puede ejecutarse debido a un error previo en esta función que está inhabilitada. |
Explicación: No se ha podido ejecutar la sentencia de SQL porque un error previo ha inhabilitado dicha función. Esta situación puede presentarse cuando el programa de aplicación intercepta una terminación anómala (por ejemplo, una condición ON ERROR en un programa PL/I) y continúa ejecutando las sentencias de SQL. También puede darse esta situación si una transacción CICS DB2, a pesar de encontrar un error de creación de hebra, continúa emitiendo peticiones de SQL sin emitir primero un SYNCPOINT ROLLBACK.
Respuesta del usuario: En general, el programa de aplicación debería interrumpirse si recibe este código de retorno. Todos los intentos posteriores que realice la aplicación para ejecutar otras sentencias de SQL también fracasarán con el mismo código de retorno. En el caso de una transacción CICS DB2, si el campo SQLERRP en SQLCA contiene el módulo DSNCEXT1, es posible que la transacción emita un SYNCPOINT ROLLBACK y siga procesándose. Si la transacción se retrotrae (ROLLBACK) y sigue procesándose, ésta debe ser capaz de subsanar la situación que en primera instancia causó el error en la creación de la hebra.
sqlcode: -906
sqlstate: 24514, 51005, 58023
SQL0908N | Error "<tipo-vinculación>" al utilizar la autorización "<id-autorización>"; no se permite la autorización BIND, REBIND o AUTO_REBIND. |
Explicación: Para BIND y REBIND, el ID de autorización indicado no se permite para realizar el "<tipo-vinculación>" indicado para un plan o paquete. Hay una entrada en la tabla de especificación de límites de recursos que (RLST) prohíbe las vinculaciones o revinculaciones que utilizan este ID de autorización, o bien todos los ID de autorización. En el caso de la autorización AUTO-REBIND, el parámetro del sistema que controla las operaciones de AUTO-REBIND está definido de tal forma que prohíbe las operaciones de AUTO-REBIND.
Respuesta del usuario: Si el ID de autorización indicado debe poder realizar operaciones de vinculación, cambie la entrada correspondiente de la tabla RLST activa. Si se inhabilitan las operaciones AUTO-REBIND, vincule de nuevo el paquete antes de volver a ejecutarlo.
sqlcode: -908
sqlstate: 23510
SQL0909N | El objeto se ha suprimido. |
Explicación: El programa de aplicación (1) ha descartado una tabla y después ha tratado de acceder a ella, o bien (2) ha descartado un índice y después ha intentado acceder a la tabla del objeto utilizando dicho índice.
Respuesta del usuario: Debe corregirse la lógica del programa de aplicación de manera que no intente acceder a un objeto o utilizarlo después de haberlo descartado.
El descarte de índices dentro de un programa de aplicación resulta especialmente arriesgado, porque es imposible determinar si el plan generado para la aplicación (mediante BIND o REBIND) utiliza realmente un índice concreto para acceder a su tabla de objetos.
sqlcode: -909
sqlstate: 57007
SQL0910N | La sentencia de SQL no puede tener acceso a un objeto sobre el que haya pendiente una modificación. |
Explicación: El programa de aplicación ha intentado acceder a un objeto dentro de la misma unidad de trabajo en la que:
Usuarios del sistema federado: además de las causas mencionadas anteriormente, tal vez existan otras restricciones específicas de la fuente de datos que eviten el acceso al objeto.
No se puede procesar la sentencia de SQL.
Respuesta del usuario: Modifique el programa de aplicación de modo que no intente acceder a un objeto dentro de la misma unidad de trabajo en la que la modificación se ha llevado a cabo. Por lo general, se recomienda aislar las sentencias del Lenguaje de definición de datos (DDL) en una unidad de trabajo diferente que las sentencias del Lenguaje de manipulación de datos (DML) que acceden a los mismos objetos.
La unidad de trabajo debe confirmarse o retrotraerse antes de que la sentencia que ha fallado pueda procesarse satisfactoriamente. Si la modificación confirmada ha provocado el descarte de un objeto, entonces tal vez sea preciso volver a crear el objeto para que la sentencia de SQL pueda procesarse satisfactoriamente.
Si el objeto se modifica dentro de SAVEPOINT, modifique el programa de aplicación para que no intente acceder al objeto después de que la aplicación emita una sentencia ROLLBACK TO SAVEPOINT. Cualquier cursor que acceda al objeto modificado y que esté abierto en el momento del ROLLBACK TO SAVEPOINT no será accesible. Modifique la aplicación para que cierre el cursor.
Si falla una sentencia INSERT, DELETE o UPDATE que implique una tabla temporal declarada NOT LOGGED, se eliminarán todas las filas de dicha tabla. Cualquier cursor que se abra para esa tabla temporal declarada en el momento de la anomalía no será accesible y la aplicación deberá cerrarlo.
Usuarios del sistema federado: si la acción anterior no resuelve el problema, localice la petición (consulte la publicación Problem Determination Guide para determinar qué fuente de datos no puede procesar la sentencia de SQL) y determine qué restricciones adicionales existentes en la fuente de datos impiden el acceso al objeto. Asegúrese de que la aplicación no viole ninguna de estas restricciones.
sqlcode: -910
sqlstate: 57007
SQL0911N | La transacción actual se ha retrotraído a causa de una situación de punto muerto o por haberse excedido el tiempo de espera. Código de razón "<código-razón>". |
Explicación: La unidad actual estaba implicada en una contienda no resuelta sobre el uso de un objeto, por lo que se ha tenido que retrotraer.
Los códigos de razón son los siguientes:
Nota: | Se tienen que volver a entrar los cambios asociados a la unidad de trabajo. |
Respuesta del usuario: Para evitar situaciones de punto muerto o de tiempo de espera de bloqueo, emita frecuentemente operaciones COMMIT, si es posible, para una aplicación de larga ejecución o para una aplicación donde parezca más probable que se detecten puntos muertos.
Usuarios del sistema federado: El punto muerto se puede producir en el servidor federado o en la fuente de datos. No hay ningún mecanismo para detectar puntos muertos que abarque fuentes de datos y, potencialmente, el sistema federado. Es posible identificar la fuente de datos que impide procesar la petición (consulte la publicación de determinación de problemas para determinar qué fuente de datos impide procesar la sentencia de SQL).
Al procesar determinadas combinaciones de sentencias de SQL es relativamente frecuente encontrarse con situaciones de punto muerto. Se recomienda diseñar aplicaciones para evitar puntos muertos en el mayor grado posible.
sqlcode: -911
sqlstate: 40001
SQL0912N | Se ha alcanzado el número máximo de peticiones de bloqueos para la base de datos. |
Explicación: Se ha alcanzado el número máximo de bloqueos para la base de datos porque no hay suficiente memoria asignada a la lista de bloqueos.
No se puede procesar la sentencia.
Respuesta del usuario: La aplicación debería someter una sentencia COMMIT o ROLLBACK antes de someter otras sentencias de SQL. Considere la posibilidad de aumentar el parámetro de configuración de la base de datos (locklist) para que haya más espacio en la lista de bloqueos.
sqlcode: -912
sqlstate: 57011
SQL0913N | La ejecución no ha resultado satisfactoria porque se ha originado una situación de punto muerto o se ha excedido el tiempo de espera. Código de razón "<código-razón>". |
Explicación: La solicitud que se ha emitido estaba implicada en una contención no resuelta sobre el uso de un objeto, y la ejecución ha resultado anómala.
Los códigos de razón son los siguientes:
Respuesta del usuario:
sqlcode: -913
sqlstate: 57033
SQL0917N | Un peticionario de aplicaciones DRDA no ha podido vincularse de manera remota. |
Explicación: Se ha producido un error durante la vinculación remota de un peticionario de aplicaciones DRDA. Este error puede surgir durante el proceso de vinculación o de confirmación.
Respuesta del usuario: Este problema suele venir provocado por una sentencia de SQL que no se ha podido vincular a causa de algún error. El usuario debe consultar el recurso de diagnósticos en el peticionario de aplicaciones DRDA para determinar cuál es la sentencia causante del error y poder corregirla.
sqlcode: -917
sqlstate: 42969
SQL0918N | La aplicación debe ejecutar una retrotracción. |
Explicación: Ya se ha retrotraído la unidad de trabajo en la base de datos, pero es posible que otros gestores de recursos implicados en esta unidad de trabajo no lo hayan hecho. Para asegurar la integridad de esta aplicación, se rechazarán todas las sentencias de SQL hasta que la aplicación emita una retrotracción.
Respuesta del usuario: Se rechazarán todas las peticiones de SQL hasta que la aplicación emita una retrotracción. Por ejemplo, en un entorno CICS, se emitiría un mandato CICS SYNCPOINT ROLLBACK.
sqlcode: -918
sqlstate: 51021
SQL0920N | No se puede acceder a los datos de un sistema cliente de bases de datos desde otros sistemas clientes de bases de datos. |
Explicación: La estación de trabajo está configurada como cliente o como un servidor con clientes locales. Las bases de datos que se creen en este sistema no se pueden compartir con otras estaciones de trabajo.
No se puede procesar la función.
Respuesta del usuario: Solicite datos sólo de estaciones de trabajo servidor.
sqlcode: -920
sqlstate: 57019
SQL0925N | SQL COMMIT no válido para el entorno de ejecución de la aplicación. |
Explicación: COMMIT no está permitido en los casos siguientes:
Respuesta del usuario: Corrija el problema mediante uno de los siguientes métodos:
sqlcode: -925
sqlstate: 2D521
SQL0926N | SQL ROLLBACK no válido para el entorno de ejecución de la aplicación. |
Explicación: ROLLBACK no está permitido en los casos siguientes:
Respuesta del usuario:
sqlcode: -926
sqlstate: 2D521
SQL0930N | No hay suficiente almacenamiento disponible para procesar la sentencia. |
Explicación: Se ha efectuado una solicitud a la base de datos que hacía necesaria otra página de memoria pero el gestor de bases de datos no dispone de más páginas de memoria.
No se puede procesar la sentencia.
Respuesta del usuario: Las soluciones posibles son:
sqlcode: -930
sqlstate: 57011
SQL0931C | Se ha producido un desbordamiento de la tabla de archivos del sistema operativo. No pueden procesarse las sentencias de SQL posteriores. |
Explicación: Se ha alcanzado un límite del sistema operativo. No se permite que el programa de aplicación emita sentencias de SQL adicionales. La base de datos necesita una recuperación y ninguna de las aplicaciones que utilizan la base de datos puede acceder a ella.
Respuesta del usuario: Interrumpa todas las aplicaciones que utilicen la base de datos. Reinicie la base de datos.
Para evitar que el problema vuelva a repetirse:
sqlcode: -931
sqlstate: 58005
SQL0950N | La tabla o el índice no se puede eliminar porque se está usando actualmente. |
Explicación: No se puede emitir una sentencia DROP TABLE o DROP INDEX cuando hay un cursor abierto utilizando la tabla o el índice en ese momento.
No se puede procesar la sentencia. La tabla o el índice no se ha descartado.
Respuesta del usuario: Cierre los cursores que sea necesario y vuelva a someter la sentencia.
sqlcode: -950
sqlstate: 55006
SQL0951N | El objeto "<nombre-objeto>" de tipo "<tipo-objeto>" no se puede alterar porque está siendo utilizado por el mismo proceso de aplicación. |
Explicación: No se puede emitir una sentencia ALTER o una sentencia SET INTEGRITY para un objeto cuando está bloqueado o en uso.
No se puede procesar la sentencia. El objeto no se altera.
Respuesta del usuario: Cierre cualquier cursor que dependa directa o indirectamente del objeto "<nombre-objeto>" y vuelva a someter la sentencia.
sqlcode: -951
sqlstate: 55007
SQL0952N | Se ha cancelado el proceso debido a una interrupción. |
Explicación: Es posible que el usuario haya pulsado la secuencia de teclas de interrupción.
Se termina el proceso de la sentencia. Antes de producirse la terminación, es posible que se hayan aplicado algunos cambios a la base de datos, pero que éstos no se hayan confirmado.
Usuarios del sistema federado: la fuente de datos también puede detectar esta situación.
Respuesta del usuario: Continúe con la aplicación.
Si está instalando la base de datos de ejemplo, elimínela e instálela de nuevo.
sqlcode: -952
sqlstate: 57014
SQL0954C | No hay suficiente almacenamiento disponible en la pila de aplicación para procesar la sentencia. |
Explicación: Se ha utilizado toda la memoria disponible para la aplicación.
No se puede procesar la sentencia.
Respuesta del usuario: Interrumpa la aplicación al recibir este mensaje. Aumente el parámetro de configuración de la base de datos (applheapsz) para que permita una pila de aplicación más grande.
sqlcode: -954
sqlstate: 57011
SQL0955C | No se puede asignar memoria de clasificación para procesar la sentencia. Código de razón = "<código-razón>". |
Explicación: No hay suficiente memoria virtual disponible para el proceso de clasificación del agente de la base de datos tal como indica el código de razón:
Respuesta del usuario: Una o más de las siguientes:
sqlcode: -955
sqlstate: 57011
SQL0956C | No hay suficiente almacenamiento disponible en la pila de base de datos para procesar la sentencia. |
Explicación: Se ha utilizado toda la memoria disponible para la base de datos.
No se puede procesar la sentencia.
Respuesta del usuario: Interrumpa la aplicación al recibir este mensaje. Aumente el parámetro de configuración de la base de datos (dbheap) para que permita una pila de base de datos mayor. Si el número de servidores de E/S está cerca del límite máximo, puede ser útil reducir este número.
sqlcode: -956
sqlstate: 57011
SQL0958C | Se ha alcanzado el número máximo de archivos abiertos. |
Explicación: Ya se ha llegado al número máximo de archivos disponibles en la base de datos.
No se puede procesar la sentencia.
Respuesta del usuario: Aumente cualquier parámetro que afecte al número máximo de archivos abiertos permitidos en la ubicación de la base de datos. Esto incluye el aumento del parámetro de configuración (maxfilop) para permitir más manejadores de archivos para la instancia y la terminación de otras sesiones para reducir el número de manejadores de archivos que se utilicen.
sqlcode: -958
sqlstate: 57009
SQL0959C | No hay suficiente almacenamiento disponible en la pila de comunicaciones del servidor para procesar la sentencia. |
Explicación: Se ha utilizado toda la memoria disponible en la pila de comunicaciones del servidor.
No se puede procesar el mandato o la sentencia.
Respuesta del usuario: Interrumpa la aplicación al recibir este mensaje. Aumente el tamaño del parámetro de la pila de comunicaciones (comheapsz) en el archivo de configuración del gestor de bases de datos de la estación de trabajo de tipo servidor.
NOTA: Este mensaje sólo se puede aplicar a releases de DB2 anteriores a la Versión 2.
sqlcode: -959
sqlstate: 57011
SQL0960C | Se ha alcanzado el número máximo de archivos en la base de datos. |
Explicación: Se ha alcanzado el número máximo de archivos de base de datos.
No se puede procesar la sentencia.
Respuesta del usuario: Interrumpa la aplicación al recibir este mensaje. Desconecte de la base de datos todas las aplicaciones activas y luego vuélvalas a conectar. Si el error sigue apareciendo, descarte de la base de datos las tablas, los índices o ambas cosas, o bien divida la base de datos.
Si está instalando la base de datos de ejemplo, elimínela e instálela de nuevo.
sqlcode: -960
sqlstate: 57011
SQL0964C | La anotación cronológica de transacciones para la base de datos está llena. |
Explicación: Se está utilizando todo el espacio de la anotación cronológica de transacciones.
En caso de utilizarse una anotación cronológica circular con archivos de anotación secundarios, significa que ha habido un intento de asignarlas para utilizarlas. Cuando el sistema de archivos ya no disponga de más espacio, no se podrán utilizar las anotaciones secundarias.
Si se utiliza una anotación cronológica de archivo, debe interpretarse que el sistema no ha proporcionado espacio para dar cabida a un nuevo archivo de anotaciones cronológicas.
No se puede procesar la sentencia.
Respuesta del usuario: Ejecute una operación COMMIT o ROLLBACK al recibir este mensaje (SQLCODE) o vuelva a intentar la operación.
Si hay varias aplicaciones que están actualizando simultáneamente la base de datos, vuelva a repetir la operación. Es posible que el registro pueda disponer de más espacio cuando otra aplicación finalice una transacción.
Emita operaciones de confirmación con mayor frecuencia. Si las transacciones no están confirmadas, piense que confirmándolas puede disponer de más espacio libre en el registro. Al diseñar una aplicación, tome en consideración el hecho de confirmar las transacciones de actualización para evitar que el registro pueda llenarse.
Si se producen puntos muertos, compruebe su existencia con mayor asiduidad. Esto puede llevarse a cabo reduciendo el parámetro de configuración DLCHKTIME de la base de datos. De esta forma, se podrán detectar los puntos muertos y darles solución con más rapidez (mediante ROLLBACK), con el consiguiente aumento del espacio de registro.
Si esta situación se produce con frecuencia, aumente el parámetro de configuración de la base de datos para permitir que el archivo de anotaciones cronológicas sea mayor. De este modo se necesitará más espacio, pero existe menor necesidad de que las aplicaciones hayan de volver a intentar las operaciones.
Si está instalando la base de datos de ejemplo, elimínela e instálela de nuevo.
sqlcode: -964
sqlstate: 57011
SQL0965W | No hay ningún texto de mensaje correspondiente al aviso de SQL "<SQLCODE>" en el archivo de mensajes de esta estación de trabajo. Se ha devuelto el aviso del módulo "<nombre>" con las señales originales "<lista señales>". |
Explicación: El servidor de base de datos ha devuelto el código "<SQLCODE>" a la aplicación. El código de aviso no se corresponde con ningún mensaje del archivo de mensajes del gestor de bases de datos de DB2 de esta estación de trabajo.
Respuesta del usuario: Consulte la documentación del servidor de la base de datos para determinar la causa del "<SQLCODE>" especificado.
SQL0966N | No es posible encontrar o no se puede abrir el archivo de correlación de errores "<nombre>" especificado en el directorio Servicios de conexión de la base de datos. |
Explicación: Se cumple una de las condiciones siguientes:
No se han podido recuperar los datos de correlación de errores.
Respuesta del usuario: Libere el archivo de la aplicación en la que se ha abierto o vuelva a instalar o a restaurar el archivo original.
sqlcode: -966
sqlstate: 57013
SQL0967N | El formato del archivo de correlación de errores "<nombre>" especificado en el directorio Servicios de conexión de la base de datos no es válido. |
Explicación: Se ha producido un error mientras el programa leía el archivo de correlación de errores.
No se han podido recuperar los datos de correlación de errores.
Respuesta del usuario: Corrija todos los errores de sintaxis que haya en el archivo de correlación de errores.
sqlcode: -967
sqlstate: 55031
SQL0968C | El sistema de archivos está lleno. |
Explicación: Uno de los sistemas de archivos que contiene la base de datos está lleno. Este sistema de archivos puede contener el directorio de bases de datos, los archivos de anotación cronológica de la base de datos o un contenedor de espacio de tabla.
No se puede procesar la sentencia.
Respuesta del usuario: Consulte la anotación cronológica de diagnósticos para determinar cuál es el sistema de archivos que está lleno. Borre los archivos no deseados para liberar espacio del sistema. No borre los archivos de la base de datos. En caso de necesitar espacio adicional, tal vez sea preciso eliminar las tablas y los índices identificados como no necesarios.
En los sistemas basados en UNIX, esta condición de disco lleno puede deberse a que se ha sobrepasado el tamaño máximo de archivos permitido para el ID de usuario actual. Actualice el fsize (tamaño de archivo) con el mandato chuser. Tal vez sea preciso volver a arrancar la máquina.
sqlcode: -968
sqlstate: 57011
SQL0969N | No hay ningún texto de mensaje correspondiente al error de SQL "<error>" en el archivo de mensajes de esta estación de trabajo. Se ha devuelto el error del módulo "<nombre>" con las señales originales "<lista señales>". |
Explicación: El servidor de la base de datos ha devuelto el error SQLCODE "<error>" a la aplicación. El código de error no se corresponde con ningún mensaje del archivo de mensajes de DB2 de esta estación de trabajo.
Respuesta del usuario: Consulte la documentación del servidor de la base de datos para determinar la causa del SQLCODE especificado. Para solucionar este problema, realice la acción que se especifique en la documentación del servidor de bases de datos.
Usuarios del sistema federado: Localice el problema en la fuente de datos que impide procesar la petición (consulte la publicación Problem Determination Guide para determinar qué fuente de datos impide procesar la sentencia de SQL). Busque el "<error>" en el manual correspondiente de la fuente de datos. Si el problema depende de los datos, tal vez sea necesario examinar los datos que se estaban procesando en la fuente de datos en el momento de producirse el error.
SQL0970N | El sistema intentó grabar en un archivo de sólo lectura. |
Explicación: Un archivo que la base de datos utiliza está catalogado como de sólo lectura o no existe. La base de datos necesita acceso de grabación para este archivo.
No se puede procesar la sentencia.
Respuesta del usuario: Interrumpa la aplicación cuando reciba este mensaje (SQLCODE). Asegúrese de que todos los archivos de la base de datos dispongan de acceso tanto de lectura como de grabación. Compruebe los espacios en blanco innecesarios dentro del nombre de archivo especificado.
sqlcode: -970
sqlstate: 55009
SQL0972N | La unidad de la base de datos no contiene el disquete correcto. |
Explicación: El disquete de la unidad no es el disquete de la base de datos.
No se puede procesar la sentencia.
Respuesta del usuario: Coloque en la unidad el disquete adecuado. No retire ningún disquete cuando la aplicación empiece a utilizar una base de datos que reside en la misma.
sqlcode: -972
sqlstate: 57019
SQL0973N | No hay suficiente almacenamiento disponible en la pila "<nombre-pila>" para procesar la sentencia. |
Explicación: Se ha utilizado toda la memoria disponible para la pila. No se puede procesar la sentencia.
Respuesta del usuario: Interrumpa la aplicación al recibir este mensaje (SQLCODE). Aumente el parámetro de configuración de "<nombre-pila>" para aumentar el tamaño de la pila.
sqlcode: -973
sqlstate: 57011
SQL0974N | La unidad que contiene la base de datos está bloqueada. |
Explicación: El sistema ha notificado que la unidad donde se encuentra la base de datos está bloqueada.
No se puede procesar la sentencia.
Respuesta del usuario: Asegúrese de que en el sistema no esté teniendo lugar otro proceso (por ejemplo, CHKDSK) que pueda bloquear la unidad. Vuelva a intentar la operación.
Si está instalando la base de datos de ejemplo, elimínela e instálela de nuevo.
sqlcode: -974
sqlstate: 57020
SQL0975N | No es posible iniciar una transacción nueva porque el usuario <nombreusuario>" ha inmovilizado la base de datos o la instancia "<nombre>". Tipo de inmovilización: "<tipo>". |
Explicación: Otro usuario ha inmovilizado la instancia o la base de datos que se trata de utilizar y no se permiten más transacciones hasta que la instancia o la base de datos en cuestión deje de estar inmovilizada.
El tipo de inmovilización "<tipo>" se refiere a la instancia o a la base de datos ya inmovilizada, siendo '1' para la instancia y '2' para la base de datos.
Respuesta del usuario: Póngase en contacto con el usuario que tiene inmovilizada actualmente la instancia o la base de datos a fin de determinar el momento en que dejará de estar inmovilizada DB2; acto seguido, trate de volver a efectuar la solicitud.
sqlcode: -975
sqlstate: 57046
SQL0976N | La puerta de la unidad de disquetes está abierta. |
Explicación: La puerta de la unidad de la base de datos está abierta.
No se puede procesar la sentencia.
Respuesta del usuario: Cierre la puerta de la unidad y repita la operación.
sqlcode: -976
sqlstate: 57021
SQL0977N | Estado COMMIT desconocido. |
Explicación: tm_database ha dejado de estar disponible durante el proceso COMMIT, lo que ha hecho que COMMIT sea desconocido. Se producirá una resincronización de las bases de datos cuando tm_database pase a estar disponible. Tenga en cuenta que es posible que se retrotraiga la transacción durante la resincronización. Se pueden producir otras ejecuciones de sentencias de SQL de forma segura, aunque es posible que se mantengan bloqueos hasta que finalice el proceso de resincronización.
Respuesta del usuario: Compruebe que se puede establecer la conexión con tm_database, utilizando por ejemplo CLP. Si no es así, siga las acciones pertinentes para que el SQLCODE que se ha devuelto pueda establecer una conexión.
sqlcode: -977
sqlstate: 40003
SQL0978N | El disquete está protegido contra grabación. |
Explicación: Se ha tratado de efectuar una operación de grabación en la base de datos, pero el disquete de la base de datos está protegido contra grabación.
No se puede procesar la sentencia.
Respuesta del usuario: Compruebe que esté utilizando el disquete correcto. Si es necesario, retire la protección del disquete.
sqlcode: -978
sqlstate: 55009
SQL0979N | COMMIT ha fallado para "<núm>" bases de datos de un proceso de aplicación que se ejecuta con SYNCPOINT o NONE. Las anomalías incluyen los siguientes alias de bases de datos y parejas de SQLSTATE (se pueden devolver hasta un máximo de cuatro): "<alias/SQLSTATE1>", "<alias/SQLSTATE2>", "<alias/SQLSTATE3>", "<alias/SQLSTATE4>". |
Explicación: Una aplicación se ha conectado a varias bases de datos y se ha emitido un COMMIT que ha fallado para una o más de estas conexiones.
Usuarios del sistema federado: Si una de las conexiones anómalas es una base de datos del servidor federado donde se utilizan apodos, significa que ha fallado una confirmación respecto a una de las fuentes de datos que era necesaria para un apodo.
Respuesta del usuario: En función de la naturaleza de la aplicación y de los datos que se estén actualizando, tal vez al usuario le venga bien interrumpir el proceso que esté llevando a cabo, registrar la anomalía y emitir el SQL apropiado para asegurarse de que los cambios propuestos por la aplicación queden constantemente reflejados en todas las bases de datos implicadas.
Si no se puede devolver una lista completa de las bases de datos que se han visto afectadas por errores COMMIT, consulte el registro de diagnóstico para obtener una lista completa.
sqlcode: -979
sqlstate: 40003
SQL0980C | Se ha producido un error de disco. No pueden procesarse las sentencias de SQL posteriores. |
Explicación: Se ha producido un error de disco que ha impedido ejecutar satisfactoriamente tanto la sentencia actual de SQL como las ulteriores. No se permite que el programa de aplicación emita sentencias de SQL adicionales. Por ejemplo, una rutina de recuperación relacionada con el programa de aplicación no puede emitir sentencias de SQL adicionales. La base de datos necesita una recuperación y ninguna de las aplicaciones que utilizan la base de datos puede acceder a ella.
No se puede procesar la sentencia.
Respuesta del usuario: Anote toda la información de error del SQLCA, si es posible. Interrumpa todas las aplicaciones que utilicen la base de datos. Determine si el error es un error de hardware y realice la acción adecuada tal como se especifica en la publicación Troubleshooting Guide para problemas de hardware. Reinicie la base de datos. Si la recuperación no es posible, restaure la base de datos a partir de una copia de seguridad.
Si está instalando la base de datos de ejemplo, elimínela e instálela de nuevo.
sqlcode: -980
sqlstate: 58005
SQL0982N | Se ha producido un error de disco. Sin embargo, pueden procesarse las sentencias de SQL posteriores. |
Explicación: Se ha producido un error de disco al procesar un sistema temporal de archivos, que ha impedido ejecutar satisfactoriamente la sentencia actual de SQL. Sin embargo, pueden procesarse las sentencias de SQL posteriores.
No se puede procesar la sentencia.
Respuesta del usuario: Interrumpa la aplicación cuando reciba este mensaje (SQLCODE).
sqlcode: -982
sqlstate: 58004
SQL0983N | La anotación cronológica de transacciones no pertenece a la base de datos actual. |
Explicación: La firma almacenada en el archivo de anotaciones cronológicas no coincide con la firma dependiente de la base de datos. Este error suele producirse cuando el usuario ha especificado que el archivo de anotaciones cronológicas se almacene en un directorio distinto al que contiene la base de datos. La redirección de archivos puede estar implicada.
No se puede procesar la sentencia.
Respuesta del usuario: Vuelva a someter el mandato con el acceso adecuado al archivo de anotaciones cronológicas.
sqlcode: -983
sqlstate: 57036
SQL0984C | Ni COMMIT ni ROLLBACK han sido satisfactorios. No pueden procesarse las sentencias de SQL posteriores. |
Explicación: Debido a un error del sistema, ha habido una operación de confirmación o de retrotracción que no se ha procesado de forma satisfactoria. No se permite que el programa de aplicación emita sentencias de SQL adicionales. Por ejemplo, una rutina de recuperación relacionada con el programa de aplicación no puede emitir sentencias de SQL adicionales. La base de datos necesita una recuperación y ninguna de las aplicaciones que utilizan la base de datos puede acceder a ella.
No se puede procesar la sentencia.
Respuesta del usuario: Si es posible, anote el número de mensaje (SQLCODE) y toda la información de error de SQLCA. Interrumpa todas las aplicaciones que utilicen la base de datos. Reinicie la base de datos. Si está instalando la base de datos de ejemplo, elimínela e instálela de nuevo.
Si la recuperación no es posible, restaure la base de datos a partir de una copia de seguridad.
Si estaba activo un rastreo, llame al Recurso de Rastreo Independiente (Independent Trace Facility) desde el indicador de mandatos del sistema operativo. Consulte el Recurso de Rastreo Independiente en la publicación Troubleshooting Guide para obtener información sobre cómo utilizar este recurso. Póngase en contacto con el representante del servicio técnico aportando la siguiente información:
Información necesaria:
Usuarios del sistema federado: detecte el problema en la fuente de datos anómala que impide procesar la petición (consulte la publicación Problem Determination Guide para determinar qué fuente de datos impide procesar la sentencia de SQL) y realice los pasos de diagnóstico y realice los procedimientos de recuperación de bases de datos que sean pertinentes para esa fuente de datos. Los procedimientos para la determinación de problemas y para la recuperación de bases de datos correspondientes a fuentes de datos varían de un caso a otro, así que debe consultar los manuales de la fuente de datos correspondiente.
sqlcode: -984
sqlstate: 58005
SQL0985C | Se ha producido un error de archivo al procesar los catálogos de la base de datos. No puede usarse la base de datos. |
Explicación: El sistema no puede recuperar un error de E/S en un archivo del catálogo.
El sistema no puede procesar ninguna sentencia que utilice la base de datos.
Respuesta del usuario: Restaure la base de datos a partir de una copia de seguridad.
Si está instalando la base de datos de ejemplo, elimínela e instálela de nuevo.
sqlcode: -985
sqlstate: 58005
SQL0986N | Se ha producido un error de archivo al procesar una tabla de usuarios. Dicha tabla no puede utilizarse. |
Explicación: Los datos de la tabla ya no son válidos.
El sistema no puede procesar ninguna sentencia que utilice dicha tabla.
Respuesta del usuario: Si la base de datos no es coherente, restaure la base de datos a partir de una copia de seguridad.
Si está instalando la base de datos de ejemplo, elimínela e instálela de nuevo.
sqlcode: -986
sqlstate: 58004
SQL0987C | El conjunto de memoria compartida del control de la aplicación no puede asignarse. |
Explicación: El conjunto de memoria compartida del control de la aplicación no puede asignarse. Este error se debe a la escasez de recursos de memoria para el gestor de bases de datos o para el entorno donde se están intentando las operaciones. Los recursos de memoria que pueden causar este error son:
Respuesta del usuario: Realice una o más de las acciones siguientes:
sqlcode: -987
sqlstate: 57011
SQL0990C | Se ha producido un error de índice. Reorganice la tabla |
Explicación: Ha habido un índice que ha tenido una actividad considerable y que ha ocupado todo el espacio disponible para los índices.
Usuarios del sistema federado: la fuente de datos también puede detectar esta situación.
No se puede procesar la sentencia.
Respuesta del usuario: Confirme el trabajo y vuelva a intentar el mandato. Si el error continúa, retrotraiga el trabajo. Si aún así sigue apareciendo, reorganice la tabla, si es posible.
Usuarios del sistema federado: localice el problema en la fuente de datos que impide procesar la petición (consulte la publicación Problem Determination Guide para determinar qué fuente de datos impide procesar la sentencia de SQL) y siga los procedimientos pertinentes para volver a crear índices para esa fuente de datos.
SQL0992C | El número de release del programa precompilado no es válido. |
Explicación: El número de release del programa (paquete) precompilado no es compatible con el número de release de la versión que hay instalada del gestor de bases de datos.
El programa (paquete) precompilado no se puede utilizar con la versión actual del gestor de bases de datos. No se puede procesar el mandato.
Respuesta del usuario: Utilice sólo programas que estén precompilados con un nivel de release compatible con el del gestor de bases de datos.
sqlcode: -992
sqlstate: 51008
SQL0993W | La nueva vía de acceso para el archivo de anotaciones cronológicas (newlogparh) del archivo de configuración de bases de datos no es válida. |
Explicación: La vía de acceso al archivo de anotaciones cronológicas no es válida por una de las siguientes razones:
El cambio solicitado no se lleva a cabo.
Respuesta del usuario: Para cambiar la vía de acceso al archivo de anotaciones cronológicas, vuelva a someter el mandato de configuración con un valor válido.
sqlcode: +993
sqlstate: 01562
SQL0994N | Utilización no válida del punto de grabación de la aplicación. |
Explicación: La función del punto de grabación de la aplicación se ha empleado de forma incoherente. El programa ha intentado realizar una de las siguientes acciones:
No se puede procesar la función.
Respuesta del usuario: Corrija el uso que se hace en el programa del punto de grabación.
SQL0995W | La vía de acceso actual al archivo de anotaciones cronológicas (vía de acceso de registro) no es válida. La vía de acceso al archivo de anotaciones cronológicas se restablece al valor por omisión. |
Explicación: La vía de acceso al archivo de anotaciones cronológicas no es válida por una de las siguientes razones:
En las anotaciones cronológicas circulares, el archivo de anotaciones cronológicas se crea en la vía de acceso del registro por omisión. En las anotaciones cronológicas de archivo, el archivo de anotaciones cronológicas siguiente se crea en la vía de acceso de anotaciones cronológicas por omisión. El cambio solicitado no se lleva a cabo.
Respuesta del usuario: Para cambiar la vía de acceso al archivo de anotaciones cronológicas, vuelva a someter un mandato de configuración con un valor válido.
sqlcode: +995
sqlstate: 01563
SQL0996N | No se pueden liberar páginas para un objeto del espacio de la tabla. |
Explicación: Hay páginas internas corruptas de bases de datos o bien errores lógicos internos en un espacio de tabla. Si desea ver los detalles, consulte la anotación cronológica de errores del sistema y/o la anotación cronológica de errores del gestor de bases de datos.
Respuesta del usuario: Deje de utilizar el objeto o el espacio de tabla. Póngase en contacto con el servicio técnico de IBM para que inspeccione el objeto y el espacio de tabla.
sqlcode: -996
sqlstate: 58035
SQL0997W | Mensaje de información general para el proceso de transacciones. Código de razón = "<código-razón-XA>". |
Explicación: El SQLCODE 997 sólo se traspasa entre componentes del gestor de bases de datos y no se devolverá a la aplicación. Sirve para traspasar códigos de retorno XA en situaciones que no sean de error. Los códigos de razón posibles son:
Respuesta del usuario: No es necesaria ninguna acción.
SQL0998N | Se ha producido un error durante la transacción o el proceso heurístico. Código de razón = "<código-razón>" Subcódigo = "<subcódigo>". |
Explicación: Se ha detectado un error al procesar una transacción distribuida. La transacción es:
Los códigos de razón posibles (los correspondientes a X/Open XA aparecen entre paréntesis) son:
Respuesta del usuario: Para los códigos de razón del 1 al 8, se efectuará una entrada en la anotación cronológica del sistema, porque a veces el SQLCA no se puede devolver al emisor.
Si el error se debe a un problema en la fuente de datos asociada a un apodo, la ubicación de la fuente de datos anómala siempre aparecerá en el registro del sistema del servidor federado.
En el código de razón 4 compruebe el contenido de la serie xa open y efectúe las correcciones pertinentes.
En el código de razón 9, subcódigo 02, asegúrese de que el parámetro de configuración tp_mon_name contiene el nombre de la biblioteca dinámica del producto externo que presenta la función ax_reg() utilizada para el registro dinámico de las transacciones.
En el código de razón 14 asegúrese de que el servicio MSDTC está activo.
El código de razón 35 significa que ha habido un intento de realizar una operación heurística contra una base de datos que sólo participa en calidad de gestor de recursos de sólo lectura en una transacción global. Ejemplos de ello son cualquier base de datos DRDA, tales como DB2 o MVS. Estos tipos de bases de datos que no son de XA no tendrían ninguna transacción dudosa.
Los códigos de razón 36, 37 y 38 significan que se ha tratado de realizar una operación heurística incorrecta en una operación dudosa. Se ha especificado el XID erróneo o bien se ha producido una operación heurística o de resincronización después de haberse registrado este XID. Efectúe una solicitud de Consulta Heurística para obtener la lista actual de transacciones dudosas a fin de verificar si todavía sigue siendo necesario llevar a cabo una operación heurística.
En el código de razón 39, el XID especificado es para una transacción que ha finalizado y está esperando a que empiece el proceso de confirmación de dos fases. Las operaciones heurísticas sólo pueden realizarse en transacciones que hayan entrado en el proceso de confirmación de dos fases y que se hayan convertido en transacciones dudosas.
El código de razón 40 significa que se ha intentado una sentencia de SQL bajo una transacción que ha fallado. Un ejemplo de ello es intentar una sentencia de SQL en una hebra de transacciones que se ha registrado satisfactoriamente después de que una hebra estrechamente acoplada que participa en la misma transacción haya terminado anormalmente.
Para el código de razón 41 puede obtener más información sobre el problema en el archivo db2diag.log. Necesita reiniciar DB2 en los nodos anómalos. Puede que sea necesario ponerse en contacto con el administrador del sistema para solicitar ayuda.
Si el código de razón es 69, significa que la base de datos del gestor de transacciones (TM), la base de datos del gestor de recursos (RM) o bien ambas cosas son diferentes a las que había cuando se ha generado la transacción dudosa. En otras palabras, los nombres de las bases de datos del TM o del RM podrían estar haciendo referencia a instancias distintas de una base de datos. Una de las siguientes puede ser la causa de la no coincidencia de los ID de anotación cronológica:
Si el código de razón es 85, significa que se están actualizando varias fuentes de datos y que algunas de ellas se han confirmado o retrotraído heurísticamente, lo que ha dado lugar a que la transacción se haya confirmado y retrotraído parcialmente. Con este código de razón, los datos se hallan en un estado incoherente y para corregirlos es necesario comprobar manualmente cada una de las fuentes de datos actualizadas por la transacción.
Para el código de razón 210, algunos nodos ya se encuentran en estado de confirmación. Debe realizar una confirmación heurística para resolver la transacción dudosa.
Para el código de razón 221, asegúrese de que todas las aplicaciones que participan en la misma transacción XA usen el mismo ID de usuario para conectar con la base de datos.
Para el código de razón 222, asegúrese de que todas las aplicaciones que participan en la misma transacción XA usen el mismo CCSID.
Para el código de razón 223, modifique la configuración de la aplicación y del cliente para utilizar clientes locales o, para clientes remotos, utilice TCPIP como el protocolo de comunicación para conectar con la pasarela.
Para el código de razón 224, actualice el cliente a la versión 7.1 o posterior.
Procedimiento general de recopilación de información:
Si no puede resolver el problema que se identifica mediante los códigos de razón, anote el número de mensaje (SQLCODE), el código de razón y el subcódigo opcional del mensaje o bien en el SQLCA de anotaciones cronológicas del sistema.
Si el problema radica en una base de datos federada, también debe anotar la ubicación de la fuente de datos anómala que se halla en la anotación cronológica del sistema del servidor federado.
Si estaba activo un rastreo, llame al Recurso de Rastreo Independiente (Independent Trace Facility) desde el indicador de mandatos del sistema operativo. Consulte el Recurso de Rastreo Independiente en la publicación Troubleshooting Guide para obtener información sobre cómo utilizar este recurso. A continuación, póngase en contacto con el representante del servicio técnico aportando la siguiente información:
Tal vez haya información adicional en la consola o en los registros cronológicos de mensajes del gestor de transacciones y del gestor de bases de datos.
sqlcode: -998
sqlstate: 58005