SQL0501N | El cursor especificado en una sentencia FETCH o CLOSE no está abierto. |
Explicación: El programa ha intentado: (1) Efectuar un FETCH mediante un cursor o (2) Efectuar un CLOSE de un cursor en un momento en que el cursor especificado no estaba abierto.
No se puede procesar la sentencia.
Respuesta del usuario: Compruebe si hay un mensaje anterior (SQLCODE) que haya podido cerrar el cursor. Tenga en cuenta que, después de cerrar el cursor, cualquier sentencia fetch o close que se efectúa sobre un cursor recibe un SQLCODE -501.
Si no se ha emitido ningún SQLCODE anterior, corrija el programa de aplicación para asegurarse de que el cursor esté abierto cuando se ejecute la sentencia FETCH o CLOSE.
sqlcode: -501
sqlstate: 24501
SQL0502N | El cursor especificado en una sentencia OPEN ya está abierto. |
Explicación: El programa ha intentado ejecutar una sentencia OPEN sobre un cursor abierto.
No se puede procesar la sentencia. No se ha modificado el cursor.
Respuesta del usuario: Corrija el programa de aplicación para asegurarse de que no intenta ejecutar una sentencia OPEN sobre un cursor que ya esté abierto.
sqlcode: -502
sqlstate: 24502
SQL0503N | No se puede actualizar una columna porque no está identificada en la cláusula FOR UPDATE de la sentencia SELECT del cursor. |
Explicación: Mediante un cursor, el programa ha intentado actualizar un valor de una columna de tabla que no estaba identificada en la cláusula FOR UPDATE de la declaración del cursor ni de la sentencia SELECT preparada.
Cualquier columna que se desee actualizar debe estar identificada en la cláusula FOR UPDATE de la declaración del cursor.
No se puede procesar la sentencia.
Respuesta del usuario: Corrija el programa de aplicación. Si se debe actualizar la columna, añada el nombre de la misma a la cláusula FOR UPDATE de la declaración del cursor.
sqlcode: -503
sqlstate: 42912
SQL0504N | El cursor "<nombre>" no está definido. |
Explicación: Se ha especificado un UPDATE o un DELETE WHERE CURRENT OF de "<nombre>", pero no se había declarado el cursor "<nombre>" en el programa de aplicación.
No se puede procesar la sentencia.
Respuesta del usuario: Asegúrese de que el programa de aplicación está completo y corrija los errores tipográficos de los nombres de los cursores.
sqlcode: -504
sqlstate: 34000
SQL0505N | El cursor "<nombre>" ya está definido. |
Explicación: El nombre del cursor especificado en la sentencia DECLARE ya está declarado.
No se puede procesar la sentencia.
Respuesta del usuario: Asegúrese de que el nombre está bien escrito.
SQL0507N | El cursor identificado en la sentencia UPDATE o DELETE no está abierto. |
Explicación: El programa ha intentado ejecutar una sentencia UPDATE o DELETE WHERE CURRENT OF de un cursor cuando el cursor especificado no estaba abierto.
No se puede procesar la sentencia. No se ha realizado ninguna actualización ni supresión.
Respuesta del usuario: Compruebe si hay un mensaje anterior (SQLCODE) que haya podido cerrar el cursor. Tenga en cuenta que después de cerrar un cursor, cualquier sentencia FETCH o CLOSE que se efectúe sobre dicho cursor recibirá un SQLCODE -501 y cualquier actualización o supresión recibirá un SQLCODE -507. Corrija la lógica del programa de aplicación para asegurarse de que el cursor especificado esté abierto cuando se ejecute la sentencia UPDATE o DELETE.
sqlcode: -507
sqlstate: 24501
SQL0508N | El cursor especificado en las sentencias UPDATE o DELETE no está colocado en una fila. |
Explicación: El programa ha intentado ejecutar una sentencia UPDATE o DELETE WHERE CURRENT OF sobre un cursor mientras el cursor especificado no estaba posicionado en una fila de una tabla de objeto. Para poder suprimir o actualizar un cursor, éste debe estar posicionado en una fila.
El cursor ya no se coloca en una fila si ésta se ha suprimido. Esto incluye el uso de cursores dentro de un punto de salvaguarda cuando se realiza ROLLBACK TO SAVEPOINT.
Usuarios del sistema federado: otra aplicación (o un cursor distinto de esta aplicación) ha actualizado y/o suprimido el registro de una fuente de datos remota y el registro ya no existe.
No se puede procesar la sentencia. No se actualiza ni suprime ningún dato.
Respuesta del usuario: Corrija la lógica del programa de aplicación para asegurarse de que el cursor esté correctamente posicionado en la fila adecuada de la tabla de objeto antes de que se ejecuta la sentencia UPDATE o DELETE. Tenga en cuenta que el cursor no está colocado en una fila si FETCH ha devuelto el mensaje SQL0100W (SQLCODE = 100).
sqlcode: -508
sqlstate: 24504
SQL0509N | La tabla especificada en las sentencias UPDATE o DELETE no es la misma tabla especificada en la sentencia SELECT del cursor. |
Explicación: El programa ha intentado ejecutar una sentencia UPDATE o DELETE WHERE CURRENT OF de un cursor, en la que el nombre de la tabla no coincide con el nombre de la tabla especificada en la sentencia SELECT del cursor.
No se puede procesar la sentencia.
Respuesta del usuario: Corrija el programa de aplicación para asegurarse de que la tabla especificada en la sentencia UPDATE o DELETE sea la misma que la identificada en la declaración del cursor.
sqlcode: -509
sqlstate: 42827
SQL0510N | UPDATE o DELETE no están permitidos para el cursor especificado. |
Explicación: El programa ha intentado ejecutar una sentencia UPDATE o DELETE WHERE CURRENT OF de un cursor sobre una tabla o una definición de vista que no permite la operación de actualización o supresión solicitada. Este error puede producirse, por ejemplo, si se intenta suprimir una vista de sólo lectura o si se intenta efectuar una actualización cuando el cursor no está definido en la cláusula FOR UPDATE.
En el gestor de bases de datos, la vista es de sólo lectura si la sentencia SELECT
Tenga presente que estas condiciones no se aplican a las subconsultas de la sentencia SELECT.
El cursor está declarado en la cláusula FOR FETCH ONLY u ORDER BY.
El cursor es ambiguo y se ha especificado la opción de vinculación BLOCKING ALL.
No se puede procesar la sentencia.
Respuesta del usuario: Si el gestor de bases de datos impide procesar la sentencia y el cursor se basa en una sentencia SELECT o VALUES de sólo lectura, no emita para ésta ninguna sentencia de actualización o supresión.
Si el gestor de bases de datos impide procesar la sentencia y el cursor no está basado en una sentencia SELECT o VALUES de sólo lectura y está definido con una cláusula FOR FETCH ONLY u ORDER BY, deberá eliminar esta cláusula de la definición del cursor o bien no emitir ninguna sentencia de actualización o supresión.
Si el gestor de bases de datos impide procesar la sentencia y no es posible determinar a partir de la definición o contexto del cursor si éste está definido como "fetch only" o "updatable", vuelva a vincular el programa con la opción de vinculación BLOCKING NO o BLOCKING UNAMBIG.
Usuarios del sistema federado: aísle el problema en la fuente de datos que impide procesar la petición (en la guía de determinación de problemas hallará los procedimientos para identificar las fuentes de datos anómalas). Si hay una fuente de datos que impide procesar la petición, examine las restricciones de dicha fuente de datos para determinar la causa del problema y su solución. Si la restricción existe en una fuente de datos, vea el manual de consulta de dicha fuente de datos para determinar por qué el objeto no puede actualizarse.
sqlcode: -510
sqlstate: 42828
SQL0511N | La cláusula FOR UPDATE no está permitida porque la tabla que especifica el cursor no puede modificarse. |
Explicación: La tabla de resultados de la sentencia SELECT o VALUES no puede actualizarse.
En el gestor de la base de datos, la tabla de resultados es de sólo lectura si el cursor se basa en una sentencia VALUES o si la sentencia SELECT contiene alguno de los siguientes elementos:
Tenga presente que estas condiciones no se aplican a las subconsultas de la sentencia SELECT.
No se puede procesar la sentencia.
Respuesta del usuario: No realice actualizaciones en la tabla de resultados tal y como se especifica.
Usuarios del sistema federado: aísle el problema en la fuente de datos que impide procesar la petición (en la guía de determinación de problemas hallará los procedimientos para identificar las fuentes de datos anómalas). Si hay una fuente de datos que impide procesar la petición, examine las restricciones de dicha fuente de datos para determinar la causa del problema y su solución. Si la restricción existe en una fuente de datos, vea el manual de consulta de dicha fuente de datos para determinar por qué el objeto no puede actualizarse.
sqlcode: -511
sqlstate: 42829
SQL0513W | La sentencia de SQL modificará una vista o una tabla entera. |
Explicación: La sentencia UPDATE o DELETE no contiene una cláusula WHERE, de modo que todas las filas de la tabla o de la vista se modificarán si se ejecuta esta sentencia.
La sentencia se acepta.
Usuarios del sistema federado: no todas las fuentes de datos informan de esta condición de aviso. El servidor federado trata de emitir este aviso siempre que existe esa condición, pero no hay garantía de que el servidor federado pueda detectar siempre dicha condición. No confíe en que este aviso evite que las operaciones UPDATE/DELETE afecten a una tabla o vista entera.
Respuesta del usuario: Asegúrese de que su intención es modificar la vista o la tabla entera.
SQL0514N | El cursor "<nombre>" no está en estado preparado. |
Explicación: El programa de aplicación ha intentado utilizar un cursor "<nombre>" que no está en estado preparado. El cursor se asocia con una sentencia que no se había preparado nunca (1) , que ROLLBACK no había conseguido hacer válida (2) o que ninguna revinculación de paquete implícita o explícita había conseguido hacer válida (3) .
No se puede procesar la sentencia.
Respuesta del usuario: En el caso (1), prepare la sentencia indicada en la sentencia DECLARE CURSOR para "<nombre>" antes de intentar abrir el cursor. En el caso (2), no emita un ROLLBACK hasta que acabe de utilizar el cursor. En el caso (3), la preparación del cursor debe volver a emitirse.
sqlcode: -514
sqlstate: 26501
SQL0516N | La sentencia DESCRIBE no especifica una sentencia preparada. |
Explicación: El nombre de sentencia en la sentencia DESCRIBE debe especificar una sentencia preparada en la misma transacción de bases de datos.
No se puede procesar la sentencia.
Respuesta del usuario: Compruebe que el nombre de la sentencia especifica una sentencia preparada.
sqlcode: -516
sqlstate: 26501
SQL0517N | El cursor "<nombre>" identifica una sentencia preparada que no es una sentencia SELECT o VALUES. |
Explicación: No se puede utilizar el cursor "<nombre>" tal como está especificado, porque la sentencia preparada indicada en la declaración del cursor no era una sentencia SELECT o VALUES.
No se puede procesar la sentencia.
Respuesta del usuario: Verifique que el nombre de la sentencia se ha especificado correctamente en las sentencias PREPARE y DECLARE CURSOR para el cursor "<nombre>". Puede también corregir el programa para asegurarse de que sólo se utilizan sentencias SELECT o VALUES preparadas, asociadas a las declaraciones del cursor.
sqlcode: -517
sqlstate: 07005
SQL0518N | La sentencia indicada en la sentencia EXECUTE no está en estado de preparada o es una sentencia SELECT o VALUES. |
Explicación: El programa de aplicación ha intentado efectuar EXECUTE en una sentencia que (1) no se ha preparado nunca, (2) no se ha validado por una ROLLBACK, (3) es una sentencia SELECT o VALUES o (4) no se ha validado ni por una revinculación implícita o explícita del paquete.
No se puede procesar la sentencia.
Respuesta del usuario: En el caso (1), prepare la sentencia antes de intentar el EXECUTE. En el caso (2), no emita ROLLBACK hasta que haya terminado de utilizar la sentencia preparada, o vuelva a preparar la sentencia después de ROLLBACK. En el caso (3), asegúrese de que la sentencia no es SELECT ni VALUES. En el caso (4), debe volver a emitirse la preparación del cursor.
sqlcode: -518
sqlstate: 07003
SQL0519N | La sentencia PREPARE identifica la sentencia SELECT o VALUES del cursor abierto "<nombre>". |
Explicación: El programa de aplicación ha intentado preparar la sentencia SELECT o VALUES para el cursor especificado cuando éste ya estaba abierto.
No se puede preparar la sentencia. Ello no afecta al cursor.
Respuesta del usuario: Corrija el programa de aplicación de modo que no intente preparar la sentencia SELECT o VALUES para un cursor abierto.
sqlcode: -519
sqlstate: 24506
SQL0525N | La sentencia de SQL no ha podido ejecutarse porque había un error durante la vinculación en la sección = "<núm-sección>" paquete = "<nombre-paquete>" señal de coherencia = X"<señal-coher>". |
Explicación: Causas posibles:
Las variables son:
No se puede ejecutar la sentencia.
Respuesta del usuario: Si se supone que la sentencia de SQL no ha de ejecutarse en la ubicación indicada, corrija el programa para que la sentencia errónea no se ejecute en dicha ubicación. Precompile, compile y sustituya la vinculación del paquete. Si se supone que la sentencia de SQL ha de ejecutarse en la ubicación indicada, corrija el problema que se ha encontrado cuando se vinculó y vincule el paquete utilizando BIND con ACTION(REPLACE). Si se han vinculado varias versiones del paquete, emita la siguiente sentencia SELECT para determinar la versión que tiene el error: SELECT VERSION FROM locid.SYSIBM.SYSPACKAGE WHERE LOCATION = ' ' AND COLLID = 'collid' AND NAME = 'pkgid' AND HEX(CONTOKEN) = 'contoken'
Donde:
sqlcode: -525
sqlstate: 51015
SQL0526N | La función solicitada no se aplica a tablas temporales declaradas. |
Explicación: La sentencia de SQL que se está ejecutando hace referencia a una tabla temporal declarada. Una tabla temporal declarada no puede utilizarse en el el contexto dado.
No se puede procesar la sentencia.
Respuesta del usuario: Modifique la sentencia de SQL para asegurarse de que el objeto no hace referencias a las tablas temporales declaradas.
sqlcode: -526
sqlstate: 42995
SQL0528N | La tabla "<nombre-tabla>" ya tiene una restricción exclusiva que es un duplicado de la restricción "<nombre>". |
Explicación: La cláusula UNIQUE utiliza la misma lista de columnas que la cláusula PRIMARY KEY, otra cláusula UNIQUE o la PRIMARY KEY, o bien es que ya hay una restricción UNIQUE para la tabla "<nombre-tabla>". Las restricciones exclusivas no pueden estar duplicadas.
"<nombre>" es el nombre de restricción, si se ha especificado uno o ya existe. Si no se ha especificado un nombre de restricción, "<nombre>" es el primer nombre de columna especificado en la lista de columna de la cláusula UNIQUE seguido de tres puntos.
No se puede procesar la sentencia.
Respuesta del usuario: Elimine la cláusula UNIQUE duplicada o cambie la lista de columnas por un conjunto de columnas que no forme parte de una restricción exclusiva.
sqlcode: -528
sqlstate: 42891
SQL0530N | El valor de inserción o actualización de FOREIGN KEY "<nombre-restricción>" no equivale a ningún valor de la clave principal de la tabla padre. |
Explicación: Se ha tratado de definir un valor en una clave externa de la tabla de objetos, pero dicho valor no coincide con ningún valor de la clave principal de la tabla padre.
Al insertar una fila en una tabla dependiente, el valor de inserción de la clave externa debe coincidir con algún valor de la clave principal de alguna fila de la tabla padre de la relación asociada.
De igual forma, al actualizar el valor de una clave externa, dicho valor debe ser igual al de la clave principal de cualquiera de las filas de la tabla padre de la relación asociada al final de la sentencia.
Usuarios del sistema federado: la restricción puede existir en la fuente de datos (si las tablas padre y dependiente existen en la fuente de datos).
Algunas fuentes de datos no proporcionan los valores adecuados para "<nombre restricción>". En estos casos, el símbolo del mensaje tendrá el siguiente formato: "<fuente de datos>:UNKNOWN", que indica que el valor real de la fuente de datos especificada es desconocido.
No se ha podido ejecutar la sentencia. El contenido de la tabla de objetos permanece intacto.
Respuesta del usuario: Examine primero el valor de inserción o actualización de la clave externa, y luego compárelo con cada uno de los valores de clave principal de la tabla padre para determinar el problema y poder corregirlo.
sqlcode: -530
sqlstate: 23503
SQL0531N | La clave principal de una fila superior de la relación "<nombre-restricción>" no se puede actualizar. |
Explicación: Se ha intentado una operación de actualizar una clave principal en la fila de la tabla padre, pero la clave principal de la fila indicada tiene filas dependientes en la tabla dependiente asociada a la misma en la restricción "<nombre-restricción>".
Cuando la norma de actualización de la restricción "<nombre-restricción>" es NO ACTION, el valor de una clave principal en una fila superior no puede actualizarse si la fila superior tiene filas dependientes al finalizar la ejecución de la sentencia.
Cuando la norma de actualización de la restricción "<nombre-restricción>" es RESTRICT, el valor de una clave principal de una fila superior no puede actualizarse si la fila superior tiene filas dependientes en el momento de intentar la actualización de la clave principal.
Usuarios del sistema federado: la restricción puede existir en la fuente de datos (si las tablas padre y dependiente existen en la fuente de datos).
Algunas fuentes de datos no proporcionan los valores adecuados para "<nombre restricción>". En estos casos, el símbolo del mensaje tendrá el siguiente formato: "<fuente de datos>:UNKNOWN", que indica que el valor real de la fuente de datos especificada es desconocido.
No se ha podido ejecutar la sentencia. El contenido de la tabla padre permanece intacto.
Respuesta del usuario: Examine la clave principal de la tabla de objetos y la clave externa de la tabla dependiente para determinar si el valor de la fila especificada de la clave principal debe cambiarse o no. Si no aparece el problema, examine el contenido de la tabla de objetos y de la tabla dependiente para determinar y corregir el problema.
sqlcode: -531
sqlstate: 23001, 23504
SQL0532N | Una fila superior no puede suprimirse porque la relación "<nombre-restricción>" restringe la supresión. |
Explicación: Se ha tratado de suprimir una fila determinada de la tabla padre, pero la clave principal de dicha fila tiene filas dependientes en la restricción de referencia "<nombre-restricción>" y para la relación se especifica la norma de supresión de NO ACTION o RESTRICT.
Cuando la norma de supresión de la restricción "<nombre-restricción>" es NO ACTION, una fila de la tabla padre no podrá suprimirse si las filas dependientes siguen dependiendo de la clave principal al finalizar la sentencia.
Cuando la norma de supresión de la restricción "<nombre-restricción>" es RESTRICT, una fila de la tabla padre no podrá suprimirse si la fila superior tiene alguna fila dependiente cuando se intenta la supresión.
Tenga en cuenta que una supresión puede suprimir en cascada otras filas de las tablas dependientes que tengan una norma de supresión de NO ACTION o RESTRICT. Así pues, la restricción "<nombre-restricción>" puede estar en otra tabla que no sea la de la operación de supresión original.
Usuarios del sistema federado: la restricción puede existir en la fuente de datos (si las tablas padre y dependiente existen en la fuente de datos).
Algunas fuentes de datos no proporcionan los valores adecuados para "<nombre restricción>". En estos casos, los campos correspondientes contienen valores (por ejemplo, "desconocido") que indican que el valor real es desconocido.
No se ha podido ejecutar la sentencia. El contenido de la tabla permanece intacto.
Respuesta del usuario: Examine la norma de supresión para todas las tablas descendientes para determinar y corregir el problema. Las tablas específicas implicadas pueden determinarse desde la relación "<nombre-restricción>".
sqlcode: -532
sqlstate: 23001, 23504
SQL0533N | La sentencia INSERT no es válida porque hay una relación que restringe el resultado de la selección completa a una fila. |
Explicación: Una operación INSERT con una selección completa ha intentado insertar varias filas en una tabla que es padre y dependiente en la misma relación de una restricción de referencia.
La selección completa de la operación INSERT no debe devolver más de una fila de datos.
No se ha podido ejecutar la sentencia INSERT. El contenido de la tabla de objetos permanece intacto.
Usuarios del sistema federado: la restricción puede existir en la fuente de datos (si las tablas padre y dependiente existen en la fuente de datos).
Respuesta del usuario: Examine la condición de búsqueda de la selección completa para asegurarse de que no se seleccionará más de una fila de datos.
sqlcode: -533
sqlstate: 21501
SQL0534N | La actualización de varias filas no es válida. |
Explicación: Una operación UPDATE ha intentado actualizar varias filas de una columna incluida en una clave primaria o en un índice exclusivo.
No se da soporte a las actualizaciones de varias filas de columnas de una clave primaria o de un índice exclusivo.
No se ha podido ejecutar la sentencia UPDATE. El contenido de la tabla permanece intacto.
Usuarios del sistema federado: La restricción puede existir en el servidor federado (si las tablas padre y dependiente existen como tales en el servidor federado), o puede existir en la fuente de datos (si las tablas padre y dependiente existen en la fuente de datos).
Respuesta del usuario: Asegúrese de que la condición de búsqueda de la sentencia UPDATE seleccione para actualización una sola fila de la tabla de objetos.
sqlcode: -534
sqlstate: 21502
SQL0535N | La sentencia DELETE no es válida porque una relación que hace referencia a sí misma restringe la supresión a una sola fila. |
Explicación: Una operación DELETE con una cláusula WHERE ha intentado suprimir múltiples filas de una tabla que es padre y dependiente en la misma relación de una restricción de referencia con una norma de supresión RESTRICT o SET NULL.
La cláusula WHERE de la operación DELETE no debe seleccionar más de una fila de datos.
No se ha podido ejecutar la sentencia DELETE. El contenido de la tabla de objetos permanece intacto.
Usuarios del sistema federado: la restricción puede existir en la fuente de datos (si las tablas padre y dependiente existen en la fuente de datos).
Respuesta del usuario: Examine la condición de búsqueda de la cláusula WHERE para asegurarse de que no se selecciona más de una fila de datos.
NOTA: Esta restricción sólo se aplica a los releases de DB2 anteriores a la Versión 2.
sqlcode: -535
sqlstate: 21504
SQL0536N | La sentencia DELETE no es válida porque la tabla "<nombre>" puede resultar afectada por la operación. |
Explicación: Se ha intentado una operación DELETE con la tabla indicada a la que se hace referencia en una subconsulta.
La tabla indicada, a la que se hace referencia en una subconsulta de la sentencia DELETE, puede verse afectada por distintas razones:
Usuarios del sistema federado: la restricción puede existir en la fuente de datos (si las tablas padre y dependiente existen en la fuente de datos).
Algunas fuentes de datos no proporcionan los valores adecuados para "<nombre>". En estos casos, los campos correspondientes contienen valores (por ejemplo, "desconocido") que indican que el valor real es desconocido.
No se ha podido procesar la sentencia.
Respuesta del usuario: No haga referencia a una tabla en una subconsulta de la sentencia DELETE cuando la tabla pueda resultar afectada por la sentencia DELETE.
NOTA: Este error sólo se puede aplicar a los releases de DB2 anteriores a la Versión 2 y a los sistemas principales a los que se accede mediante DB2 Connect.
sqlcode: -536
sqlstate: 42914
SQL0537N | La cláusula PRIMARY KEY, una cláusula FOREIGN KEY, una cláusula UNIQUE o una cláusula PARTITIONING KEY identifica más de una vez a la columna "<nombre>". |
Explicación: La columna "<nombre>" aparece más de una vez en una cláusula PRIMARY KEY, una cláusula FOREIGN KEY, una cláusula UNIQUE o una cláusula PARTITIONING KEY de una sentencia CREATE o ALTER.
Usuarios del sistema federado: la restricción puede existir en la fuente de datos (si las tablas padre y dependiente existen en la fuente de datos).
Algunas fuentes de datos no proporcionan los valores adecuados para "<nombre>". En estos casos, los campos correspondientes contienen valores (por ejemplo, "desconocido") que indican que el valor real es desconocido.
No se puede procesar la sentencia.
Respuesta del usuario: Especifique nombres exclusivos para cada columna.
sqlcode: -537
sqlstate: 42709
SQL0538N | La clave externa (FOREIGN KEY) "<nombre>" no se ajusta a la descripción de la clave principal de la tabla "<nombre-tabla>". |
Explicación: La definición de la clave externa indicada no se ajusta a la descripción de la clave principal de la tabla "<nombre-tabla>".
Los posibles errores son:
"<nombre>" es el nombre de la restricción, si ésta se ha especificado en la cláusula FOREIGN KEY. Si no se ha especificado el nombre de una restricción, "<nombre>" es el primer nombre de columna especificado en la cláusula, seguido de tres puntos.
Usuarios del sistema federado: algunas fuentes de datos no proporcionan los valores apropiados para "<nombre>" y "<nombre-tabla>". En estos casos, los campos correspondientes contienen valores (por ejemplo, "desconocido") que indican que el valor real es desconocido.
La restricción puede existir en la fuente de datos (si las tablas padre y dependiente existen en la fuente de datos).
No se puede procesar la sentencia.
Respuesta del usuario: Corrija la sentencia de forma que la descripción de la clave externa se ajuste a la descripción de la clave principal.
sqlcode: -538
sqlstate: 42830
SQL0539N | La tabla "<nombre>" no tiene una clave "<tipo-clave>". |
Explicación: Se ha producido una de las siguientes condiciones:
Usuarios del sistema federado: la restricción puede existir en la fuente de datos (si las tablas padre y dependiente existen en la fuente de datos).
Algunas fuentes de datos no proporcionan los valores adecuados para "<nombre>" y "<tipo clave>". En estos casos, los campos correspondientes contienen valores (por ejemplo, "desconocido") que indican que el valor real es desconocido.
No se puede procesar la sentencia. Un catálogo del sistema no puede definirse como superior en una restricción de referencia.
Respuesta del usuario: Cuando cree una restricción de referencia, especifique la clave primaria antes de especificar claves externas (restricciones).
sqlcode: -539
sqlstate: 42888
SQL0540N | La definición de la tabla "<nombre-tabla>" no está completa ya que le falta un índice primario o un índice exclusivo necesario. |
Explicación: La tabla con nombre se ha definido con una cláusula PRIMARY KEY o con una cláusula UNIQUE. Su definición está incompleta y no puede utilizarse hasta que se haya definido un índice exclusivo para la clave primaria (el índice primario) y para cada conjunto de columnas de cada cláusula UNIQUE (los índices exclusivos necesarios). Se ha efectuado un intento de utilizar la tabla en una cláusula FOREIGN KEY o en una sentencia de manipulación de SQL.
No se puede ejecutar la sentencia.
Respuesta del usuario: Defina un índice primario o un índice exclusivo necesario en la tabla antes de hacer referencia al mismo.
sqlcode: -540
sqlstate: 57001
SQL0541W | La restricción "<nombre>" exclusiva, de referencia o de clave primaria, se ha pasado por alto porque está duplicada. |
Explicación: Si "<nombre>" se refiere a una restricción de referencia, quiere decir que hay una cláusula FOREIGN KEY que utiliza la misma clave externa y la misma tabla padre como otra cláusula FOREIGN KEY.
Si "<nombre>" se refiere a una restricción exclusiva o a una restricción de clave primaria, quiere decir que se está ante una de las situaciones siguientes:
"<nombre>" es el nombre de la restricción, en caso de que se haya especificado. Si no se ha especificado el nombre de una restricción, "<nombre>" es el primer nombre de columna especificado en la lista de columnas de la cláusula FOREIGN KEY o UNIQUE, seguido de tres puntos.
Usuarios del sistema federado: la restricción puede existir en la fuente de datos (si las tablas padre y dependiente existen en la fuente de datos).
Algunas fuentes de datos no proporcionan los valores adecuados para "<nombre>". En estos casos, los campos correspondientes contienen valores (por ejemplo, "desconocido") que indican que el valor real es desconocido.
La restricción de referencia o exclusiva indicada no se ha creado. La sentencia se ha procesado satisfactoriamente.
Respuesta del usuario: No es necesaria ninguna acción. Se puede continuar el proceso.
sqlcode: +541
sqlstate: 01543
SQL0542N | "<nombre>" no puede ser una columna de una clave primaria o exclusiva, porque puede contener valores nulos. |
Explicación: La columna "<nombre>" identificada en una cláusula PRIMARY KEY o en una cláusula UNIQUE está definida de tal forma que permite incluir valores nulos.
Usuarios del sistema federado: Algunas fuentes de datos no proporcionan los valores adecuados para "<nombre>". En estos casos, los campos correspondientes contienen valores (por ejemplo, "desconocido") que indican que el valor real es desconocido.
No se puede procesar la sentencia.
Respuesta del usuario: Corrija la definición de la columna, de la clave primaria o de la clave exclusiva.
sqlcode: -542
sqlstate: 42831
SQL0543N | Una fila de la tabla padre no puede suprimirse porque la restricción de comprobación "<nombre-restricción>" limita la supresión. |
Explicación: No se puede ejecutar la operación de supresión porque la tabla destino es una tabla padre y está conectada, con una restricción de referencia, a una tabla dependiente con una norma de supresión SET NULL. Sin embargo, la restricción de comprobación definida en la tabla dependiente evita que la columna pueda tener un valor nulo.
No se puede procesar la sentencia.
Respuesta del usuario: Revise la clave externa y su norma de supresión en la tabla dependiente así como la restricción de comprobación que genera el conflicto. Modifique la norma de supresión o la restricción de comprobación de modo que no entren en conflicto entre sí.
sqlcode: -543
sqlstate: 23511
SQL0544N | La restricción de comprobación "<nombre-restricción>" no puede añadirse porque la tabla contiene una fila que viola la restricción. |
Explicación: Por lo menos una de las filas de la tabla infringe la restricción de comprobación que se pretende añadir en la sentencia ALTER TABLE.
No se puede procesar la sentencia.
Respuesta del usuario: Revise la definición de la restricción de comprobación especificada en la sentencia ALTER TABLE y los datos de la tabla para determinar el motivo de que se infrinja la restricción. Modifique la restricción de comprobación o los datos de modo que no se infrinja la restricción.
sqlcode: -544
sqlstate: 23512
SQL0545N | La operación solicitada no está permitida porque una fila no cumple la restricción de comprobación "<nombre-restricción>". |
Explicación: Se puede infringir la restricción de comprobación en las operaciones INSERT o UPDATE. La fila resultante ha infringido la definición de la restricción de comprobación en esa tabla.
No se puede procesar la sentencia.
Respuesta del usuario: Revise los datos y la definición de la restricción de comprobación en la vista de catálogos SYSCAT.CHECKS para determinar la causa de que la sentencia INSERT o UPDATE haya fallado. Modifique los datos de modo que no se infrinja la restricción.
sqlcode: -545
sqlstate: 23513
SQL0546N | La restricción de comprobación "<nombre-restricción>" no es válida. |
Explicación: Una de las restricciones de comprobación de la sentencia CREATE TABLE o ALTER TABLE no es válida por uno de los siguientes motivos:
No se puede procesar la sentencia.
Respuesta del usuario: La respuesta del usuario es una de las siguientes, en función de la causa del error:
sqlcode: -546
sqlstate: 42621
SQL0548N | Una restricción de comprobación definida con "<elemento-condición-comprobación>" no es válida. |
Explicación: Una de las restricciones de comprobación de la sentencia CREATE TABLE o ALTER TABLE no es válida por uno de los siguientes motivos:
El símbolo contenido en el texto del mensaje de error lista el elemento no válido.
No se puede procesar la sentencia.
Respuesta del usuario: La respuesta del usuario es una de las siguientes, en función de la causa del error:
sqlcode: -548
sqlstate: 42621.
SQL0549N | La sentencia "<sentencia>" no está permitida para el "<tipo-objeto1 >" "<nombre-objeto1>" porque la opción de vinculación DYNAMICRULES(BIND) en el "<tipo-objeto2>" está en vigor. |
Explicación: Un programa ha intentado emitir la sentencia de SQL indicada, que es una de varias sentencias de SQL que no pueden emitirse desde un paquete o plan para el que la opción DYNAMICRULES(BIND) esté en vigor. Esas sentencias de SQL son:
Respuesta del usuario: Realice una de las acciones siguientes para corregir el error:
sqlstate: 42509
SQL0551N | "<ID-autorización>" no tiene el privilegio de realizar la operación "<operación>" en el objeto "<nombre>". |
Explicación: El ID de autorización "<ID-autorización>" ha intentado realizar la "<operación>" especificada en "<nombre>" sin tener la autorización adecuada.
Si se está creando o alterando una tabla con restricciones de referencia, este mensaje (SQLCODE) puede indicar que el usuario no tiene el privilegio REFERENCES para crear o eliminar una FOREIGN KEY. En este caso, la "<operación>" es "REFERENCES" y el "<nombre>" es el objeto al que la restricción hace referencia.
Al tratar de ejecutar un programa de utilidad de DB2 o una aplicación de CLI, es posible que los programas de utilidad de DB2 se tengan que volver a vincular a la base de datos, bien porque el ID de usuario que haya creado la base de datos ya no exista o bien porque ya no tenga los privilegios necesarios.
Usuarios del sistema federado: Si aparece este mensaje cuando el usuario está cambiando la columna remote_pw de la vista SYSCAT.USEROPTIONS, significa que el usuario no tiene autorización para cambiar una contraseña por otro usuario. El usuario que está realizando la operación de alteración debe tener autorización SYSADM o un ID de autorización (el valor del registro especial USER) que corresponda con el valor de la columna authid de las filas que están actualizándose. Algunas fuentes de datos no proporcionan los valores adecuados para "<authid>", <operación>, y <nombre>. En estos casos, las señales de mensajes tendrán el siguiente formato: "<fuente de datos> AUTHID:UNKNOWN", "UNKNOWN" y "<fuente de datos>:TABLE/VIEW", lo que indica que se desconocen los valores reales de AUTHID, la operación y el nombre de la fuente de datos especificada.
No se puede procesar la sentencia.
Respuesta del usuario: Asegúrese de que el "<ID-autorización>" disponga de la autorización necesaria para llevar a cabo esa operación.
Usuarios del sistema federado: Esta autorización puede estar en el servidor federado, la fuente de datos, o en ambos.
Si es preciso volver a vincular los programas de utilidad de DB2 a la base de datos, el administrador de la base de datos puede llevar a cabo este cometido si, estando conectado a la base de datos, emite desde el subdirectorio BND de la instancia uno de los siguientes mandatos CLP:
sqlcode: -551
sqlstate: 42501
SQL0552N | "<ID-autorización>" no tiene el privilegio de realizar la operación "<operación>". |
Explicación: El ID de autorización "<ID-autorización>" ha intentado realizar la "<operación>" especificada sin tener la autorización adecuada.
Usuarios del sistema federado: algunas fuentes de datos no proporcionan los valores adecuados para "<ID-autorización>" y <operación>. En estos casos, las señales de mensajes tendrán el siguiente formato: "<fuente de datos> AUTHID:UNKNOWN" y "UNKNOWN" lo que indica que se desconocen los valores reales de AUTHID y la operación de la fuente de datos especificada.
No se puede procesar la sentencia.
Respuesta del usuario: Asegúrese de que el "<ID-autorización>" disponga de la autorización necesaria para llevar a cabo esa operación.
Usuarios del sistema federado: Esta autorización puede estar en el servidor federado, la fuente de datos, o en ambos.
sqlcode: -552
sqlstate: 42502
SQL0553N | Un objeto no puede crearse con el nombre de esquema "<nombre-esquema>". |
Explicación: El motivo por el que el nombre de esquema "<nombre-esquema>" no es válido depende del tipo de objeto que se desea crear.
No se puede procesar la sentencia.
Respuesta del usuario: Utilice un nombre de esquema válido o elimine el nombre de esquema que ha provocado el error y vuelva a ejecutar la sentencia.
sqlcode: -553
sqlstate: 42939
SQL0554N | Un ID de autorización no puede otorgarse un privilegio a sí mismo. |
Explicación: Un ID de autorización ha intentado ejecutar una sentencia GRANT en la que el mismo ID de autorización aparece como una de las entradas de la lista de ID de autorización a los que se otorgan privilegios.
No se puede procesar la sentencia.
Respuesta del usuario: Elimine el ID de autorización de la lista.
sqlcode: -554
sqlstate: 42502
SQL0555N | Un ID de autorización no puede revocarse un privilegio a sí mismo. |
Explicación: Un ID de autorización ha intentado ejecutar una sentencia REVOKE en la que el mismo ID de autorización aparece como una de las entradas de la lista de ID de autorización a los que se revocan privilegios.
No se puede procesar la sentencia.
Respuesta del usuario: Elimine el ID de autorización de la lista.
sqlcode: -555
sqlstate: 42502
SQL0556N | Se ha denegado un intento de revocar un privilegio al "<ID-autorización>" porque el "<ID-autorización>" no dispone de dicho privilegio. |
Explicación: No se puede revocar el privilegio porque el "<ID-autorización>" no dispone de ese privilegio.
No se puede procesar la sentencia.
Respuesta del usuario: Modifique la sentencia REVOKE para que cumpla con las normas de REVOKE y vuelva a someter la sentencia. Asegúrese de que, cuando una sentencia REVOKE lista varios privilegios a revocar y los ID de autorización, cada ID de autorización es propietario por lo menos de uno de los privilegios especificados.
sqlcode: -556
sqlstate: 42504
SQL0557N | La combinación de privilegios especificada no puede ser otorgada ni revocada. |
Explicación: Se ha producido una de las siguientes condiciones:
No se puede procesar la sentencia.
Respuesta del usuario: Corrija la sentencia y vuelva a someterla.
sqlcode: -557
sqlstate: 42852
SQL0558N | El intento de revocar un privilegio del "<ID-autorización>" se denegó porque el "<ID-autorización>" todavía mantenía la autorización "<control>". |
Explicación: El "<ID-autorización>" contiene el privilegio "<control>". El privilegio que se quiere revocar está implícito en el privilegio "<control>", por lo que no se puede revocar a menos que también se revoque el privilegio "<control>".
Los valores válidos de "<control>" son los siguientes:
No se puede ejecutar la sentencia. No se revoca ningún privilegio.
Respuesta del usuario: Revoque el privilegio "<control>", si lo desea.
sqlcode: -558
sqlstate: 42504
SQL0562N | Los privilegios especificados para la base de datos no pueden otorgarse a PUBLIC (público). |
Explicación: La sentencia GRANT ha intentado otorgar un privilegio de base de datos a un ID de autorización reservado PUBLIC (público). La autorización DBADM no puede otorgarse a PUBLIC (público).
No se puede procesar la sentencia.
Respuesta del usuario: No se da soporte a la función implícita.
sqlcode: -562
sqlstate: 42508
SQL0567N | El "<ID-autorización>" no es un ID de autorización válido. |
Explicación: El ID de autorización especificado en "<ID-autorización>" no es un ID de autorización válido por una de las siguientes razones:
No se puede procesar la sentencia.
Respuesta del usuario: Corrija el ID de autorización no válido.
sqlcode: -567
sqlstate: 42602
SQL0569N | La sentencia GRANT/REVOKE ha fallado porque el "<nombre-autorización>" puede identificar tanto a un usuario como a un grupo del sistema. |
Explicación: La sentencia GRANT o REVOKE especifica un nombre de autorización que puede identificar tanto a un usuario como a un grupo del espacio de nombres de seguridad, y no se ha especificado explícitamente la palabra clave USER o GROUP en la sentencia. Por lo tanto la sentencia resulta ambigua. Tenga en cuenta que, al utilizar la seguridad DCE, siempre es preciso utilizar la palabra clave USER o GROUP.
Respuesta del usuario: Modifique la sentencia para que especifique explícitamente la palabra clave USER o GROUP para identificar de forma exclusiva el ID de autorización necesario.
sqlcode: -569
sqlstate: 56092
SQL0570W | No se han concedido todos los privilegios solicitados sobre el objeto "<nombre-objeto>" del tipo "<tipo-objeto>". |
Explicación: Se ha intentado realizar una operación GRANT sobre el objeto "<nombre-objeto>" del tipo "<tipo-objeto>", pero se han denegado algunos o todos los privilegios. El ID de autorización que ha emitido la sentencia no tiene todos los privilegios que se han de conceder con la opción GRANT o bien carece de autorización DBADM.
Se han concedido todos los privilegios válidos solicitados.
Respuesta del usuario: Obtenga la autorización necesaria y vuelva a intentarlo.
sqlcode: +570
sqlstate: 01007
SQL0572N | El paquete "<nombre-paquete>" no es operativo. |
Explicación: El paquete "<nombre-paquete>" está marcado como no operativo y se debe volver a vincular explícitamente antes de poder utilizarlo. Este paquete no se puede utilizar porque se ha eliminado más de una función definida por el usuario que depende de este paquete.
Respuesta del usuario: Vuelva a vincular explícitamente el paquete utilizando el mandato REBIND o BIND.
sqlcode: -572
sqlstate: 51028
SQL0573N | Una lista de columnas especificada en la cláusula de referencias de la restricción "<nombre>" no identifica una restricción exclusiva de la tabla padre "<nombre-tabla>". |
Explicación: En la cláusula de referencias se ha especificado una lista de nombres de columnas para la restricción identificada con el nombre "<nombre>" que no coincide con los nombres de columnas de la clave primaria o de ninguna clave exclusiva de la tabla "<nombre-tabla>" referenciada.
"<nombre>" es el nombre de la restricción, en caso de que se haya especificado. Si no se ha especificado el nombre de una restricción, "<nombre>" es el primer nombre de columna especificado en la lista de columnas de la cláusula FOREIGN KEY seguido de tres puntos.
No se puede procesar la sentencia.
Respuesta del usuario: Corrija la lista de columnas en la cláusula de referencias o añada la restricción exclusiva a la tabla referenciada.
sqlcode: -573
sqlstate: 42890
SQL0574N | El valor DEFAULT o el valor del atributo IDENTITY no es válido para la columna "<nombre-columna>" de la tabla "<nombre-tabla>". Código de razón: "<código-razón>". |
Explicación: El valor DEFAULT o el valor de atributo IDENTITY para la columna "<nombre-columna>" de la tabla "<nombre-tabla>" no es válido. Los códigos de razón posibles son los siguientes:
No se puede procesar la sentencia.
Respuesta del usuario: Corrija el valor DEFAULT o el valor de atributo IDENTITY en base al código de razón obtenido.
sqlcode: -574
sqlstate: 42894
SQL0575N | No se puede utilizar la vista o tabla de resumen "<nombre>" porque está marcada como no operativa. |
Explicación: La vista o tabla de resumen "<nombre>" está marcada como no operativa porque se ha eliminado la tabla, vista, alias o privilegio del que depende. Únicamente las siguientes sentencias de SQL pueden utilizar la vista:
No se puede procesar la sentencia.
Respuesta del usuario: Si "<nombre>" es una vista, vuelva a crearla emitiendo una sentencia CREATE VIEW, con la misma definición de vista que la vista no operativa. Si "<nombre>" es una tabla de resumen, vuelva a crear la tabla de resumen emitiendo la sentencia CREATE TABLE con la misma definición de tabla de resumen que la tabla de resumen no operativa.
sqlcode: -575
sqlstate: 51024
SQL0576N | El alias "<nombre>" no puede crearse para "<nombre2>" porque se originaría una cadena de alias repetitiva. |
Explicación: La definición del alias "<nombre>" para "<nombre2>" causaría una cadena de alias repetitiva que nunca se resolvería. Por ejemplo, "alias A hace referencia a alias B, el cual hace referencia a alias A" es una cadena de alias repetitiva que nunca se resolvería.
No se puede procesar la sentencia.
Respuesta del usuario: Modifique la definición del alias "<nombre>" o revise la definición de uno de los otros alias de la cadena para evitar que la cadena sea repetitiva.
sqlcode: -576
sqlstate: 42916
SQL0577N | La función o el procedimiento definido por el usuario "<nombre-función>" (nombre específico "<nombre-específico>") ha intentado modificar los datos, pero no se ha definido como MODIFIES SQL DATA. |
Explicación: Al programa utilizado para implementar el cuerpo de una función o procedimiento definido por el usuario no se le permite modificar datos de SQL.
Respuesta del usuario: Elimine las sentencias de SQL que modifican datos y vuelva a compilar el programa. Para los procedimientos almacenados, investigue el nivel de SQL permitido, como se especifica en la sentencia CREATE PROCEDURE.
sqlcode: -577
sqlstate: 38002
sqlstate: 42985
SQL0579N | La función o el procedimiento definido por el usuario "<nombre-función>" (nombre específico "<nombre-específico>") ha intentado leer los datos, pero no se ha definido como READ SQL DATA o MODIFIES SQL DATA. |
Explicación: Al programa utilizado para implementar el cuerpo de una función o procedimiento definido por el usuario no se le permite leer datos de SQL.
Respuesta del usuario: Elimine las sentencias de SQL que leen datos y vuelva a compilar el programa. Para los procedimientos almacenados, investigue el nivel de SQL permitido, como se especifica en la sentencia CREATE PROCEDURE.
sqlcode: -579
sqlstate: 38004
sqlstate: 42985
SQL0580N | Las expresiones resultantes de una expresión CASE no pueden ser todas NULL. |
Explicación: La sentencia contiene una expresión CASE cuyas expresiones de resultado (expresiones que siguen a las palabras THEN y ELSE) están codificadas con la palabra clave NULL.
No se puede procesar la sentencia.
Respuesta del usuario: Modifique la expresión CASE para que incluya por lo menos una expresión de resultado que no sea la palabra clave NULL.
sqlcode: -580
sqlstate: 42625
SQL0581N | Los tipos de datos de las expresiones resultantes de una de las expresiones CASE no son compatibles. |
Explicación: La sentencia contiene una expresión CASE que tiene expresiones de resultado (expresiones que siguen a las palabras clave THEN y ELSE) que no son compatibles.
El tipo de datos de una expresión CASE se determina mediante las "Normas de los tipos de datos de resultado" de las expresiones resultantes. Los tipos de datos de las expresiones resultantes pueden ser incompatibles por una de las siguientes razones:
No se puede procesar la sentencia.
Respuesta del usuario: Corrija las expresiones de resultado de modo que sean compatibles.
sqlcode: -581
sqlstate: 42804
SQL0582N | Una expresión CASE en una cláusula VALUES, un predicado IN, una cláusula GROUP BY o una cláusula ORDER BY no puede incluir un predicado cuantificado, un predicado IN que utilice una selección completa o un predicado EXISTS. |
Explicación: Una condición de búsqueda de una expresión CASE es:
y la expresión CASE forma parte de:
No se da soporte a dichas expresiones CASE. La expresión CASE puede formar parte de una función escrita en SQL.
No se puede procesar la sentencia.
Respuesta del usuario: Elimine el predicado cuantificado, el predicado IN o el predicado EXISTS de la expresión CASE. Si la expresión CASE forma parte de una función, es posible que sea necesario escribir la consulta sin la función que causa el error.
sqlcode: -582
sqlstate: 42625
SQL0583N | La utilización de la rutina "<nombre-rutina>" no es válida ya que no es determinante o tiene una acción externa. |
Explicación: La rutina (función o método) "<nombre-rutina>" se define como una rutina no determinante o como una rutina con acción externa. No se da soporte a este tipo de rutina en el contexto en el que se ha utilizado. Los contextos en los que este tipo de función no es válida son:
No se puede procesar la sentencia.
Respuesta del usuario: Si el uso de una rutina no determinante o con acción externa no fue intencionado, sustituya la rutina por una que no tenga dichas características. Si el comportamiento asociado con la rutina no determinante o con acción externa es intencionado, utilice la forma alternativa de las sentencias que convierten en explícita la intención.
sqlcode: -583
sqlstate: 42845
SQL0584N | Uso no válido de NULL o DEFAULT. |
Explicación: Sólo se puede utilizar DEFAULT en una cláusula VALUES que forme parte de una sentencia INSERT.
Una cláusula VALUES que no forme parte de una sentencia INSERT debe tener un valor que no sea NULL en una fila de cada columna, como mínimo.
Si se utiliza DEFAULT como nombre de columna en una cláusula WHERE o HAVING, debe estar en mayúsculas y entre comillas.
Usuarios del sistema federado: No se puede utilizar DEFAULT en una cláusula VALUES de una sentencia INSERT en la que el objeto es un apodo.
Respuesta del usuario: Sustituya el valor de la cláusula VALUES por uno que no sea NULL ni DEFAULT. Si se utiliza DEFAULT como nombre de columna, debe estar en mayúsculas y entre comillas.
sqlcode: -584
sqlstate: 42608
SQL0585N | El nombre de esquema "<nombre-esquema>" no puede aparecer más de una vez en la vía de acceso de la función. |
Explicación: La vía de acceso de la función incluye el "<nombre-esquema>" en más de una ocasión. La vía de acceso de la función incluye una aparición de cada nombre de esquema.
No se puede procesar la sentencia.
Respuesta del usuario: Elimine las apariciones duplicadas de "<nombre-esquema>" de la vía de acceso de la función.
sqlcode: -585
sqlstate: 42732
SQL0586N | La longitud total del registro CURRENT FUNCTION PATH no puede sobrepasar los 254 caracteres. |
Explicación: El registro especial CURRENT FUNCTION PATH se define como VARCHAR(254). El contenido de la serie incluye cada nombre de esquema entrecomillado y si hay más de un nombre de esquema, éstos están separados por comas. La longitud total de una serie de todos los nombres de esquema en CURRENT FUNCTION PATH no puede sobrepasar los 254 caracteres de longitud. La sentencia SET CURRENT FUNCTION PATH o la opción FUNCPATH del mandato PREP o BIND que provoca este mensaje sobrepasaría este límite.
La sentencia o el mandato no se pueden procesar.
Respuesta del usuario: Elimine los nombres de esquema con el fin de reducir la longitud total para que se adecue a los 254 caracteres de longitud máxima. Si todos los nombres de esquema son obligatorios, será necesario consolidar algunas funciones definidas por el usuario para que sean necesarios menos nombres de esquema en CURRENT FUNCTION PATH.
sqlcode: -586
sqlstate: 42907
SQL0590N | El nombre "<nombre>" especificado en el procedimiento "<procedimiento>" no es exclusivo. |
Explicación: El nombre "<nombre>" se especifica como un parámetro, variable SQL, cursor, etiqueta o condición en el procedimiento "<procedimiento>". El nombre no es exclusivo.
Respuesta del usuario: Modifique el nombre para que sea exclusivo.
sqlcode: -590
sqlstate: 42734
SQL0595W | El nivel de aislamiento "<nivel-solicitado>" se ha escalado a "<nivel-escalado>". |
Explicación: DB2 no da soporte al nivel de aislamiento especificado. Se ha escalado al nivel de aislamiento superior siguiente al que da soporte DB2.
Respuesta del usuario: Para evitar que aparezca este aviso, especifique un nivel de aislamiento al que DB2 dé soporte. DB2 da soporte a los niveles de aislamiento de Lectura repetida (RR), Estabilidad de lectura (RS), Estabilidad de cursor (CS) y de Lectura no confirmada (UR).
sqlcode: +595
sqlstate: 01526
SQL0598W | El índice "<nombre>" existente se utiliza como índice de la clave primaria o exclusiva. |
Explicación: Se necesitaba un índice para una operación ALTER TABLE que ha definido una clave primaria o una clave exclusiva y el índice indicado coincide con el índice necesario.
Al crear un índice de clave primaria o de clave exclusiva, la descripción del índice coincide si identifica al mismo conjunto de columnas (en cualquier orden) que la clave primaria o exclusiva, tanto si las especificaciones son ascendentes como descendentes, y se indica como exclusivo.
Se procesa la sentencia satisfactoriamente.
Respuesta del usuario: No es necesaria ninguna acción.
sqlcode: +598
sqlstate: 01550
SQL0599W | No se crean funciones de comparación para un tipo diferenciado que se basa en un tipo de datos de serie larga de caracteres. |
Explicación: No se crean funciones de comparación para un tipo diferenciado basado en un tipo de datos de serie larga (BLOB, CLOB, DBCLOB, LONG VARCHAR o LONG VARGRAPHIC), ya que las funciones correspondientes no están disponibles para estos tipos de datos incorporados.
Esta es una situación de aviso. Se procesa la sentencia satisfactoriamente.
Respuesta del usuario: No es necesaria ninguna acción.
sqlcode: +599
sqlstate: 01596