Consulta de mensajes

SQL0100 - SQL0199

SQL0100WNo se ha encontrado ninguna fila para FETCH, UPDATE o DELETE o bien el resultado de una consulta es una tabla vacía.

Explicación: Se cumple una de las condiciones siguientes:

No se ha recuperado, actualizado ni suprimido ningún dato.

Respuesta del usuario: No es necesaria ninguna acción. Se puede continuar el proceso.

sqlcode: +100

sqlstate: 02000

SQL0101NLa sentencia es demasiado larga o demasiado compleja.

Explicación: No se ha podido procesar la sentencia porque excede el límite del sistema establecido para la longitud o complejidad, o porque intervienen demasiadas restricciones o activadores.

Si la sentencia crea o modifica una descripción empaquetada, la nueva descripción empaquetada puede ser demasiado grande para la columna correspondiente en los catálogos del sistema.

Los Usuarios del sistema federado también deben comprobar si la sentencia:

No se puede procesar la sentencia.
Nota:Allí donde se realicen conversiones de datos de caracteres para aplicaciones y bases de datos que se ejecuten bajo diferentes páginas de códigos, el resultado de la conversión es el exceso del límite de longitud.

Respuesta del usuario: Proceda de una de estas maneras:

sqlcode: -101

sqlstate: 54001

SQL0102NLa constante de serie con empieza con "<serie>", es demasiado larga.

Explicación: Se ha producido una de las situaciones siguientes:

Es posible que se esté produciendo una conversión de datos y que la serie resultante sea demasiado larga. Para las conexiones entre aplicaciones y bases de datos que se ejecutan con diferentes páginas de códigos, las constantes de series de caracteres pasan de una página de códigos de aplicación a otra. En determinadas situaciones, las constantes de series de gráficos pueden convertirse además de la página de códigos de base de datos a una codificación UCS-2 (UNICODE), por ejemplo, cuando la base de datos se ha creado con una página de códigos EUC. Esto significa que es posible obtener una serie resultante que sea más larga que la serie de entrada.

No se puede procesar la sentencia.

Respuesta del usuario: Si el problema está en el comentario sobre columna o en el comentario sobre tabla, reduzca el tamaño del comentario. Si el problema está en la sentencia de SQL CONNECT, reduzca la longitud del nombre del servidor de aplicaciones. Si el problema está en otras constantes de serie, la función solicitada no está disponible de forma interactiva. Si el error se produce en el contexto de una sentencia que no sea CONNECT SQL incluida en un programa de aplicación, asigne la serie larga a una variable del sistema principal y sustituya la variable por la serie literal en la sentencia de SQL.

Usuarios del sistema federado: en una sesión de paso a través, determine la fuente de datos que provoca el error (consulte la guía para la determinación de problemas para conocer las fuentes de datos anómalas). Examine el lenguaje SQL para esta fuente de datos para determinar el límite específico que se ha excedido y ajuste la sentencia que falla tal como sea necesario.

sqlcode: -102

sqlstate: 54002

SQL0103NEl literal numérico "<literal>" no es válido.

Explicación: El "<literal>" indicado empieza con un dígito pero no es un entero, un decimal o un literal de coma flotante válido.

Usuarios del sistema federado: Se ha producido un error de representación literal específico de la fuente de datos en una sesión de paso a través.

No se puede procesar la sentencia.

Respuesta del usuario: Corrija el literal numérico no válido. Usuarios del sistema federado, si el error se ha producido en una sesión de paso a través, determine la fuente de datos que provoca el error (consulte la guía para la determinación de problemas para conocer las fuentes de datos que fallan). Examine el lenguaje SQL para esa fuente de datos para determinar la norma de representación literal que se ha violado y ajuste la sentencia que falla tal como sea necesario.

sqlcode: -103

sqlstate: 42604

SQL0104NSe ha encontrado un símbolo "<símbolo>" después de "<texto>". Los símbolos esperados son: "<lista-símbolos>".

Explicación: Se ha detectado un error de sintaxis en la sentencia de SQL en el símbolo especificado después del texto "<texto>". El campo "<texto>" indica los 20 caracteres de la sentencia de SQL que preceden al símbolo que no es válido.

Como ayuda al programador, se proporciona una lista parcial de símbolos válidos en el campo SQLERRM del SQLCA como "<lista-símbolos>". Esta lista da por supuesto que la sentencia es correcta hasta ese punto.

No se puede procesar la sentencia.

Respuesta del usuario: Revise y corrija la sentencia en el área del símbolo especificado.

sqlcode: -104

sqlstate: 42601

SQL0105NLa constante de serie que empieza con "<serie>" no es válida.

Explicación: La sentencia contiene una constante de serie que empieza por "<serie>" que no es válida.

No se puede procesar la sentencia.

Respuesta del usuario: Especifique el formato correcto de la constante de serie. Compruebe la serie gráfica, las parejas de delimitadores y que el número de bytes de la serie sea par.

Usuarios del sistema federado, consulte la guía para la determinación de problemas para determinar la fuente de datos que provoca el error.

sqlcode: -105

sqlstate: 42604

SQL0106NLa sentencia de SQL empieza correctamente pero no está completa.

Explicación: La sentencia de SQL es correcta hasta el punto en que falta más entrada. Podría estar provocado por no haber podido finalizar correctamente un literal. Los literales de serie necesitan unas comillas al final.

Ha finalizado el proceso de esta sentencia de SQL.

Respuesta del usuario: Compruebe que la sentencia tenga todas las partes necesarias para completar la función deseada y que todas las cláusulas se hayan completado.

En PL/I: Compruebe que se haya completado la sentencia de SQL antes del punto y coma. En Assembler: Compruebe que se sigan adecuadamente las normas de continuación. (Debe haber un carácter que no sea blanco en la columna 72 y las líneas continuas deben empezar en la columna 16 o posterior.)

En COBOL: Compruebe que se haya completado la sentencia de SQL antes de END-EXEC.

sqlcode: -106

sqlstate: 42601, 42603

SQL0107NEl nombre "<nombre>" es demasiado largo. La longitud máxima es "<longitud>".

Explicación: El nombre devuelto como "<nombre>" es demasiado largo. La longitud máxima permitida para este tipo viene indicada por "<longitud>".

Los nombres de índices y restricciones pueden tener una longitud máxima de 18 bytes. Los nombres de columnas pueden tener una longitud máxima de 30 bytes. Los nombres de puntos de grabación, tablas, vistas y alias pueden tener una longitud máxima de 128 bytes. (Esta longitud no incluye los caracteres de escape, en el caso de que los haya.)

Se permite un máximo de 30 bytes para el nombre de esquema (calificador de objeto), excepto para tipos definidos por el usuario, que permiten un máximo de 8 bytes para un nombre de esquema.

Los nombres de variables del sistema principal no pueden exceder los 30 bytes de longitud.

Para la sentencia de SQL CONNECT, en el momento de la precompilación se aceptará un nombre de servidor de aplicaciones de una longitud no superior a los 18 caracteres. Sin embargo, en el momento de la ejecución, un nombre de servidor de aplicaciones que contenga más de 8 caracteres de longitud causará un error.

Asimismo, se aceptará una contraseña de hasta 18 caracteres de longitud y un ID de autorización de hasta 8 caracteres de longitud en la sentencia de SQL CONNECT.

Usuarios del sistema federado: si se trata de una sesión de paso a través, es posible que se haya excedido un límite específico de la fuente de datos.

No se puede procesar la sentencia.
Nota:Allí donde se realicen conversiones de datos de caracteres para aplicaciones y bases de datos que se ejecuten bajo diferentes páginas de códigos, el resultado de la conversión es el exceso del límite de longitud.

Respuesta del usuario: Elija un nombre más corto o corrija la ortografía del nombre de objeto.

Usuarios del sistema federado: en una sesión de paso a través, determine la fuente de datos que provoca el error (consulte la guía para la determinación de problemas para conocer las fuentes de datos anómalas). Examine el lenguaje SQL para esta fuente de datos para determinar el límite específico que se ha excedido y ajuste la sentencia que falla tal como sea necesario.

sqlcode: -107

sqlstate: 42622

SQL0108NEl nombre "<nombre>" tiene un número erróneo de calificadores.

Explicación: El nombre "<nombre>" se ha calificado de forma incorrecta.

El objeto con el nombre "<nombre>" sólo puede tener un calificador.

Un nombre de columna está calificado con un nombre de tabla (calificado o no calificado) o con un nombre de correlación. En algunos contextos, un nombre de columna necesita un calificador de nombre de tabla.

No se puede procesar la sentencia.

Respuesta del usuario: Asegúrese de que el nombre del objeto está correctamente calificado.

sqlcode: -108

sqlstate: 42601

SQL0109NLa cláusula "<cláusula>" no está permitida.

Explicación: La cláusula indicada no está permitida en el contexto en el que aparece en la sentencia de SQL.

Una subconsulta, una sentencia INSERT o una sentencia CREATE VIEW no pueden tener cláusulas INTO, ORDER BY ni FOR UPDATE. Una sentencia SELECT incluida no puede tener cláusulas ORDER BY ni FOR UPDATE. Una sentencia SELECT incluida no puede contener un operador de conjunto, excepto en una subconsulta. Las sentencias SELECT o VALUES utilizadas en declaraciones del cursor no pueden tener una cláusula INTO. Sólo se puede utilizar una función RAISE_ERROR como elemento de la lista de selección si se convierte a algún otro tipo de datos utilizando la especificación CAST.

Usuarios del sistema federado: En una sesión de paso a través, es posible que se haya violado una restricción específica de la fuente de datos.

No se puede procesar la sentencia.

Respuesta del usuario: Corrija la sentencia de SQL eliminando la cláusula.

Usuarios del sistema federado: En una sesión de paso a través, determine la fuente de datos que provoca el error (consulte la guía para la determinación de problemas para conocer las fuentes de datos anómalas). Examine el dialecto de SQL correspondiente a esa fuente de datos para determinar cuál es la restricción específica que se ha violado y ajuste, si procede, la sentencia anómala.

sqlcode: -109

sqlstate: 42601

SQL0110N"<serie>" es una constante hexadecimal no válida.

Explicación: La constante hexadecimal "<serie>" no es válida. El problema es alguno de los siguientes:

Respuesta del usuario: Corrija la constante y vuelva a someter la sentencia.

sqlcode: -110

sqlstate: 42606

SQL0111NLa función de columna "<nombre>" no incluye ningún nombre de columna.

Explicación: No se ha especificado correctamente la función de columna "<nombre>" (AVG, MIN, MAX, SUM o COUNT(DISTINCT)) porque estas funciones deben incluir un nombre de columna en el operando.

No se puede procesar la sentencia.

Respuesta del usuario: Especifique un nombre de columna en la expresión que sea el operando de la función de columna.

NOTA: Este error sólo afecta a los releases de DB2 anteriores a la Versión 2.

sqlcode: -111

sqlstate: 42901

SQL0112NEl operando de la función de columna "<nombre>" incluye una función de columna, una selección completa escalar o una subconsulta.

Explicación: El operando de una función de columna no puede incluir:

En una lista SELECT, el operando de un operador aritmético no puede ser una función de columna que incluya la palabra clave DISTINCT.

No se puede procesar la sentencia.

Respuesta del usuario: Corrija el modo en que se utiliza la función de columna para eliminar la expresión no válida y vuelva a intentarlo.

sqlcode: -112

sqlstate: 42607

SQL0113N"<identificador>" contiene un carácter que no está permitido o no contiene ningún carácter.

Explicación: Un nombre de variable SQL, un nombre de parámetro o un nombre de condición "<identificador>" contiene un carácter no válido. Sólo se permiten caracteres que son válidos para un identificador común SQL. Observe que debido a que el identificador está delimitado, no se realiza la conversión y las letras mayúsculas y minúsculas se consideran diferenciadas entre sí.

Respuesta del usuario: Corrija el identificador y vuelva a someter la sentencia.

sqlcode: -113

sqlstate: 42601

SQL0117NEl número de valores asignado no es el mismo que el número de columnas especificadas o implícitas.

Explicación:

No se puede procesar la sentencia.

Respuesta del usuario: Corrija la sentencia de modo que especifique un valor para cada una de las columnas especificadas o implicadas.

sqlcode: -117

sqlstate: 42802

SQL0118NLa tabla o vista de destino de la sentencia INSERT, DELETE o UPDATE también se especifica en una cláusula FROM.

Explicación: La tabla o vista especificada como destino de una sentencia INSERT, DELETE o UPDATE aparece también en la cláusula FROM de una subconsulta de la sentencia.

La tabla o vista destino de una sentencia INSERT, UPDATE o DELETE no se puede utilizar para suministrar los valores que se van a insertar ni para calificar las filas que se van a insertar, actualizar o suprimir.

No se puede procesar la sentencia.

Este mensaje sólo afecta a los servidores de la Versión 1.2 y anteriores, y los sistemas principales accedidos a través de DB2 Connect.

Respuesta del usuario: No se da soporte a la función implícita. Para intentar obtener el resultado deseado, cree una copia temporal de la tabla de objetos o vista y direccione la subselección a dicha copia.

sqlcode: -118

sqlstate: 42902

SQL0119NUna expresión que empieza por "<inicio-expresión>" especificada en una cláusula SELECT, cláusula HAVING o cláusula ORDER BY no está especificada en la cláusula GROUP BY o está en una cláusula SELECT, cláusula HAVING o cláusula ORDER BY con una función de columna y no se ha especificado ninguna cláusula GROUP BY.

Explicación: La sentencia SELECT contiene uno de los errores siguientes:

La expresión identificada es una expresión que empieza por "<inicio-expresión>". La expresión puede ser un solo nombre de columna.

Si se especifican las funciones NODENUMBER o PARTITION en la cláusula HAVING, se considera que todas las columnas de claves de particionamiento de la tabla subyacente se encuentran en la cláusula HAVING.

No se puede procesar la sentencia.

Respuesta del usuario: Corrija la sentencia incluyendo la expresión en la cláusula GROUP BY que está en la cláusula SELECT, cláusula HAVING o cláusula ORDER BY, o eliminando la función de columna de la sentencia SELECT.

sqlcode: -119

sqlstate: 42803

SQL0120NUna cláusula WHERE, GROUP BY, SET o una sentencia de variable de transición SET contiene una función de columna.

Explicación: Una cláusula WHERE sólo puede contener una función de columna si la cláusula aparece en una subconsulta de una cláusula HAVING y el argumento de la función de columna es una función correlacionada a un grupo. Una cláusula GROUP BY sólo puede contener una función de columna si el argumento de la función de columna es una referencia correlacionada a una columna de una subselección distinta de la que contiene la cláusula GROUP BY. Una cláusula SET de una sentencia UPDATE o una sentencia de variable de transición SET sólo puede incluir una función de columna dentro de una selección completa a la derecha de una asignación.

No se puede procesar la sentencia.

Respuesta del usuario: Cambie la sentencia de modo que no se utilice la función de columna o que sólo se utilice donde está soportada.

sqlcode: -120

sqlstate: 42903

SQL0121NLa columna "<nombre>" se especifica más de una vez en la sentencia de variable de transición INSERT, UPDATE o SET.

Explicación: La misma columna "<nombre>" se ha especificado más de una vez en la lista de columnas de una sentencia INSERT, la parte izquierda de las asignaciones de la cláusula SET de una sentencia UPDATE o la parte izquierda de las asignaciones de la sentencia de variable de transición SET. Observe que este error puede producirse al realizar una actualización o una inserción en una vista en la que más de una columna se basa en la misma columna de una tabla base.

No se puede procesar la sentencia.

Respuesta del usuario: Corrija la sintaxis de la sentencia de modo que cada nombre de columna esté especificado sólo una vez.

sqlcode: -121

sqlstate: 42701

SQL0122NUna sentencia SELECT sin cláusula GROUP BY contiene un nombre de columna y una función de columna en la cláusula SELECT o bien la cláusula SELECT contiene un nombre de columna pero no en la cláusula GROUP BY.

Explicación: La sentencia SELECT contiene uno de los errores siguientes:

La columna puede estar contenida en una función escalar.

Si se especifican las funciones NODENUMBER o PARTITION en la cláusula SELECT, se considera que todas las columnas de claves de particionamiento de la tabla subyacente se hallan en la cláusula SELECT.

No se puede procesar la sentencia.

Respuesta del usuario: Corrija la sentencia incluyendo en la cláusula GROUP BY las columnas de la cláusula SELECT o eliminando las columnas de la cláusula SELECT.

sqlcode: -122

sqlstate: 42803

SQL0123NEl parámetro de la posición "<n>" de la función "<nombre>" debe ser una constante o una palabra clave.

Explicación: El parámetro de la posición "<n>" de la función "<nombre>" no es una constante cuando es necesario que sea una constante o no es una palabra clave cuando es necesario que lo sea.

Respuesta del usuario: Asegúrese de que cada argumento de la función cumple la definición del parámetro correspondiente.

sqlcode: -123

sqlstate: 42601

SQL0125NEl número de columna de la cláusula ORDER BY es menor que uno o mayor que el número de columnas de la tabla de resultados.

Explicación: La cláusula ORDER BY de la sentencia contiene un número de columna menor que 1 o mayor que el número de columnas de la tabla de resultados (el número de elementos de la cláusula SELECT).

No se puede procesar la sentencia.

Respuesta del usuario: Corrija la sintaxis de la cláusula ORDER BY de modo que cada identificador de columna identifique correctamente a una columna de la tabla de resultados.

sqlcode: -125

sqlstate: 42805

SQL0127NSe ha especificado DISTINCT más de una vez.

Explicación: No se puede utilizar el calificador DISTINCT a la vez en:

No se puede procesar la sentencia.

Respuesta del usuario: Este error sólo se puede aplicar a los releases de DB2 anteriores a DB2 Versión 2 y a los sistemas principales a los que se accede mediante DB2 Connect.

sqlcode: -127

sqlstate: 42905

SQL0129NLa sentencia contiene demasiados nombres de tabla (el máximo es 15).

Explicación: La sentencia de SQL contiene demasiados nombres de tabla. Una sola sentencia de SQL puede hacer referencia a un total de 15 tablas. En este límite se incluye cada una de las tablas a las que se haga referencia en cualquier vista.

No se puede procesar la sentencia.

Respuesta del usuario: Divida la sentencia de SQL en dos o más sentencias simples que tengan 15 o menos referencias de tablas.

Este mensaje sólo afecta a los servidores de la Versión 1.2 y anteriores, y los sistemas principales accedidos a través de DB2 Connect.

sqlcode: -129

sqlstate: 54004

SQL0130NLa cláusula ESCAPE no es un sólo carácter, o bien la serie contiene una aparición no válida del carácter de escape.

Explicación: El carácter de escape debe ser un sólo carácter que no tenga más de dos bytes de longitud. Sólo puede aparecer en la serie si le sigue otro carácter de escape, un signo de porcentaje o un guión bajo. Para obtener más información acerca de la cláusula ESCAPE en el predicado LIKE, consulte la publicación Consulta de SQL.

Respuesta del usuario: Corrija la serie de patrones o el carácter de escape como corresponda.

sqlcode: -130

sqlstate: 22019, 22025

SQL0131NLos operandos del predicado LIKE tienen tipos de datos incompatibles.

Explicación: Si la expresión que hay a la izquierda de LIKE o de NOT LIKE es de tipo carácter, la expresión de la derecha también debe ser de tipo carácter.

Si la expresión de la izquierda es de tipo gráfico, la de la derecha también debe ser de tipo gráfico.

Si la expresión de la izquierda es de tipo BLOB, la de la derecha también debe ser de tipo BLOB.

No se puede procesar la sentencia.

Respuesta del usuario: Corrija las expresiones del predicado LIKE para que sean del mismo tipo.

sqlcode: -131

sqlstate: 42818

SQL0132NUn predicado LIKE o una función escalar POSSTR no son válidos porque el primer operando no es una expresión de serie o porque el segundo operando no es una serie.

Explicación: Un predicado LIKE o una función escalar POSSTR que aparece en la sentencia no es válido porque el primer operando no es una expresión de serie o porque el segundo operando no es una serie.

El operando que aparece a la izquierda de un predicado LIKE o NOT LIKE o el primer operando de POSSTR debe ser una expresión de serie. El valor que aparece a la derecha del predicado o del segundo operando de POSSTR puede ser:

teniendo en cuenta las siguientes restricciones:

No se puede utilizar un predicado LIKE ni una función escalar POSSTR con DATE, TIME ni TIMESTAMP.

No se puede procesar la sentencia.

Respuesta del usuario: Compruebe y corrija la sintaxis de LIKE y POSSTR

sqlcode: -132

sqlstate: 42824

SQL0134NSe ha utilizado de forma indebida una columna de serie, una variable del sistema principal o la función "<nombre>".

Explicación: No se permite la utilización de la serie "<nombre>".

No se permite una expresión que dé como resultado un tipo de datos de serie con una longitud superior a 255 bytes en:

No se permite una expresión que dé como resultado un tipo de datos LONG VARCHAR o LONG VARGRAPHIC en:

Usuarios del sistema federado: en una sesión de paso a través, este error puede deberse a una restricción específica de la fuente de datos. Consulte la publicación Consulta de SQL para ver las fuentes de datos que fallan.

No se puede procesar la sentencia.

Respuesta del usuario: La operación solicitada en la serie no está soportada.
Nota:Si no queda clara la forma en que puede excederse el límite de 255 bytes, considere que pueden precisarse operaciones de conversión de páginas de códigos para evaluar la expresión de la serie. Según las páginas de código fuente y destino, la página de códigos destino puede tener un atributo de longitud mayor que la página de códigos fuente. Para obtener más información, consulte la publicación Consulta de SQL para ver las explicaciones de las restricciones de serie y conversiones de series.
sqlcode: -134

sqlstate: 42907

SQL0135NLa entrada para una columna de serie larga de una sentencia INSERT o UPDATE debe ser de una variable del sistema principal o la palabra clave NULL.

Explicación: UPDATE o INSERT utiliza constantes, nombres de columna o subconsultas cuando debería utilizar NULL o una variable del sistema principal.

Una columna de serie larga es LONG VARCHAR, LONG VARGRAPHIC, VARCHAR(n) donde n es mayor que 254 pero menor o igual a 32767, o bien VARGRAPHIC(n) donde n es mayor que 127 pero menor o igual a 16383.

Respuesta del usuario: Consulte el manual DB2 for VM Application Programming para obtener información sobre la utilización de series largas. Corrija la sentencia. Vuelva a intentarlo.

sqlcode: -135

sqlstate: 56033

SQL0137NLa longitud resultante de "<operación>" es mayor que "<valor máximo>".

Explicación: El resultado de concatenar los operandos dados supera la longitud máxima a la que da soporte el tipo de resultado.

Los resultados de la serie de caracteres están limitados a 32.700 bytes a no ser que alguno de lo operandos sea un CLOB, con lo que el límite sería de 2 gigabytes.

Los resultados de la serie gráfica están limitados a 16.350 caracteres a no ser que alguno de los operandos sea un DBCLOB, con lo que el límite sería de 1.073.741.823 caracteres de doble byte (1 menos que un gigabyte).

Los resultados de series binarias (los operandos son BLOB) se limitan a 2 gigabytes.

Respuesta del usuario: Asegúrese de que la suma de longitudes de los operandos no supera el máximo al que se da soporte y vuelva a intentar la operación.

sqlcode: -137

sqlstate: 54006

SQL0138NEl segundo o el tercer argumento de la función SUBSTR está fuera del rango permitido.

Explicación: Se ha producido una de las condiciones siguientes:

M es la longitud del primer argumento, si es una longitud fija, o la longitud máxima del primer argumento, si es una longitud variable. N es el valor del segundo argumento.

No se puede procesar la sentencia.

Respuesta del usuario: Asegúrese de que el segundo y el tercer argumento de la función SUBSTR tienen valores que cumplen las normas anteriores.

sqlcode: -138

sqlstate: 22011

SQL0139WAparece una cláusula redundante en la especificación para la columna "<columna>".

Explicación: La cláusula de la especificación de columna es redundante.

La sentencia se ha procesado satisfactoriamente, pero se ha pasado por alto la cláusula redundante.

Respuesta del usuario: Corrija la especificación de columna.

sqlcode: +139

sqlstate: 01589

SQL0142NNo se da soporte a la sentencia de SQL.

Explicación: El gestor de bases de datos no soporta una sentencia de SQL incluida que puede ser válida para otros productos de bases de datos relacionales de IBM.

Usuarios del sistema federado: compruebe si la sentencia de SQL se ha dirigido a una fuente de datos que no soporta la sentencia de SQL.

No se puede procesar la sentencia.

Respuesta del usuario: Cambie la sintaxis de la sentencia de SQL o elimine dicha sentencia del programa.

Usuarios del sistema federado: si la razón es desconocida, aísle el problema en la fuente de datos que no puede procesar la petición (en la guía para la determinación de problemas hallará los procedimientos que hay que seguir para identificar la fuente de datos que falla) y examine el lenguaje SQL para esa fuente de datos.

SQL0143WNo se da soporte a la sentencia de SQL; se ignora la sintaxis no válida.

Explicación: El gestor de bases de datos comprende pero no da soporte a una sentencia de SQL incluida, que puede ser válida para otros productos de bases de datos relacionales de IBM.

La sentencia puede generar resultados incoherentes o no deseados.

Respuesta del usuario: Cambie la sintaxis de la sentencia de SQL o elimine dicha sentencia del programa.

SQL0150NLa vista, la tabla de tipo o la tabla de resumen de la sentencia INSERT, DELETE o UPDATE es una vista, una tabla de tipo o una tabla de resumen para la cual no está permitida la operación solicitada.

Explicación: La vista, tabla de tipo o tabla de resumen nombrada en la sentencia INSERT, UPDATE o DELETE está definida de modo que la operación de inserción, actualización o supresión solicitada no se puede realizar.

Una vista es de sólo lectura si la sentencia SELECT contiene cualquiera de los siguientes elementos:

Tenga presente que estas condiciones no se aplican a las subconsultas de la sentencia SELECT.

No se pueden insertar filas directamente en una tabla de tipo definida en un tipo de estructura del que no se puede crear una instancia. Puede que las subtablas de esta tabla permitan la inserción.

Las tablas resumen no permiten operaciones de inserción, actualización ni supresión.

No se puede procesar la sentencia.

Respuesta del usuario: No se puede realizar la función solicitada en la vista o la tabla resumen.

Usuarios del sistema federado: si la razón es desconocida, aísle el problema en la fuente de datos que no puede procesar la petición (vea en la guía para la determinación de problemas los procedimientos que se han de seguir para identificar la fuente de datos que falla) y examine la definición del objeto y las restricciones de actualización para esa fuente de datos.

sqlcode: -150

sqlstate: 42807

SQL0151NLa columna "<nombre>" no se puede actualizar.

Explicación: No se puede actualizar la columna especificada debido a uno de los siguientes motivos.

Los Usuarios del sistema federado deben comprobar si alguna otra limitación específica de la fuente de datos impide la actualización de la columna.

No se puede procesar la sentencia.

Respuesta del usuario: No se da soporte a la función solicitada. Para obtener una lista de los catálogos que se pueden actualizar (y de las columnas que se pueden actualizar), consulte el manual Consulta de SQL.

Usuarios del sistema federado: si la razón es desconocida, aísle el problema en la fuente de datos que no puede procesar la petición (consulte la guía para la determinación de problemas) y examine la definición del objeto y las restricciones de actualización para esa fuente de datos.

sqlcode: -151

sqlstate: 42808

SQL0153NLa sentencia CREATE VIEW o una expresión de tabla común no incluye una lista de columna.

Explicación: Hay que especificar una lista de columnas en una sentencia CREATE VIEW o en una expresión de tabla común cuando:

No se puede procesar la sentencia. No se creó la vista para una sentencia CREATE VIEW.

Respuesta del usuario: Suministre una lista de nombres de columnas en la sentencia CREATE VIEW, en la expresión de tabla común o nombre las columnas de la lista SELECT de la selección completa mediante la cláusula AS.

sqlcode: -153

sqlstate: 42908

SQL0155NNo se puede modificar una tabla de transición del activador.

Explicación: El activador incluye una cláusula REFERENCING con un OLD_TABLE o un NEW_TABLE identificados. Una sentencia de SQL de DELETE, INSERT o UPDATE activada ha utilizado el mismo nombre como OLD_TABLE o NEW_TABLE que la tabla que ha de modificarse.

Respuesta del usuario: Elimine de la acción activada la sentencia de SQL de DELETE, INSERT o UPDATE activada o bien cambie el nombre de la tabla de transición, de modo que no entre en conflicto con la tabla que está tratando de modificar.

sqlcode: -155

sqlstate: 42807

SQL0156NEl nombre que se ha utilizado para esta operación no es una tabla.

Explicación: Las sentencias ALTER TABLE, DROP TABLE, SET CONSTRAINTS, CREATE TRIGGER, CREATE INDEX, LOCK TABLE y RENAME TABLE de SQL sólo se pueden aplicar a las tablas, no a las vistas. Los programas de utilidad RUNSTATS y LOAD sólo se pueden aplicar también a las tablas, no a las vistas.

Usuarios del sistema federado: Algunos programas de utilidad y sentencias no están soportados en un entorno federado. Consulte la publicación Administration Guide para obtener más información.

No se puede procesar la sentencia o el programa de utilidad.

Respuesta del usuario: Compruebe que en la sentencia se ha especificado el nombre de tabla correcto. Si se ha suministrado un nombre de alias, asegúrese de que el alias se resuelve en una tabla.

Usuarios del sistema federado: Verifique que el objeto no sea un apodo.

sqlcode: -156

sqlstate: 42809

SQL0157N"<nombre>" no está permitido en una cláusula FOREIGN KEY porque no identifica una tabla básica.

Explicación: Se ha identificado el objeto "<nombre>" en una cláusula FOREIGN KEY de una sentencia CREATE o ALTER TABLE. Una cláusula FOREIGN KEY debe identificar una tabla básica.

No se puede procesar la sentencia. No se crea ni se modifica la tabla especificada.

Respuesta del usuario: Corrija la sentencia de modo que especifique un nombre de tabla básica en la cláusula FOREIGN KEY.

Si se ha suministrado un nombre de alias, asegúrese de que el alias se resuelve en una tabla básica.

sqlcode: -157

sqlstate: 42810

SQL0158NEl número de columnas especificado para "<nombre>" no es igual al número de columnas de la tabla de resultados de la selección completa asociada.

Explicación: El identificador "<nombre>" ha podido identificar:

El número de nombres de columna especificados debe ser igual al número de columnas de la tabla de resultados de la selección completa asociada.

No se puede procesar la sentencia.

Respuesta del usuario: Corrija la sintaxis para que la lista de nombres de columnas definida para "<nombre>" especifique un nombre para cada columna de la tabla de resultados de la selección completa asociada.

sqlcode: -158

sqlstate: 42811

SQL0159NLa sentencia hace referencia al "<objeto>" que identifica un "<tipo-objeto>" en lugar de un "<tipo-objeto-esperado>".

Explicación: El objeto "<objeto>" especificado como parte de la sentencia o mandato hace referencia a un objeto de tipo "<tipo-objeto>" en lugar del tipo esperado "<tipo-objeto-esperado>".

El tipo del objeto proporcionado con la sentencia o mandato debe coincidir con el tipo identificado por "<tipo-objeto-esperado>". Por ejemplo, si la sentencia es DROP ALIAS PBIRD.T1, PBIRD.T1 debe ser un nombre de alias.

Respuesta del usuario: Cambie la sentencia o mandato de modo que coincida adecuadamente con el tipo de objeto identificado por "<tipo-objeto-especificado>".

sqlcode: -159

sqlstate: 42809

SQL0160NLa cláusula WITH CHECK OPTION no es válida para la vista especificada.

Explicación: La cláusula WITH CHECK OPTION no se puede utilizar en una definición de vista si:

Usuarios del sistema federado: la opción WITH CHECK no está soportada en las vistas que hacen referencia a apodos que se pueden actualizar.

No se puede procesar la sentencia. No se ha creado la vista especificada.

Respuesta del usuario: Elimine la cláusula WITH CHECK OPTION o cambie la definición de la vista de modo que cumpla con las normas anteriores.

sqlcode: -160

sqlstate: 42813

SQL0161NLa fila resultante de INSERT o de UPDATE no cumple la definición de vista.

Explicación: Se ha especificado la cláusula WITH CHECK OPTION en la definición de la vista que constituye el objeto de la sentencia INSERT o UPDATE. Por lo tanto, se comprueba cualquier intento de insertar o actualizar filas de esta vista para asegurar que los resultados se ajustan a la definición de vista.

No se puede procesar la sentencia. No se realiza ninguna inserción ni actualización ni se modifica el contenido de la vista ni de la tabla base implícita.

Respuesta del usuario: Revise la definición de vista para averiguar por qué se ha rechazado INSERT o UPDATE. Tenga en cuenta que esta condición puede depender de los datos.

La sentencia INSERT o UPDATE solicitada puede intentar colocar valores fuera de rango en la columna o columnas destino. En las actualizaciones de catálogos del sistema, consulte el manual Consulta de SQL para ver los rangos válidos de las diversas columnas actualizables de los catálogos.

Usuarios del sistema federado: si la razón es desconocida, aislar el problema en la fuente de datos que no puede procesar la petición (consulte la guía para la determinación de problemas) y examine la definición del objeto y la definición de la vista para esa fuente de datos.

sqlcode: -161

sqlstate: 44000

SQL0170NEl número de argumentos para la función "<nombre>" es incorrecto.

Explicación: La función escalar especificada "<nombre>" tiene demasiados o insuficientes argumentos.

No se puede procesar la sentencia.

Respuesta del usuario: Asegúrese de especificar el número correcto de argumentos para la función escalar.

sqlcode: -170

sqlstate: 42605

SQL0171NEl tipo de datos, la longitud o el valor del argumento "<n>" de la rutina "<nombre>" no son correctos.

Explicación: El tipo de datos, la longitud o el valor del argumento "<n>" de la rutina "<nombre>" no son correctos.

No se puede procesar la sentencia.

Respuesta del usuario: Asegúrese de que los argumentos de la rutina cumplen las normas de la rutina.

sqlcode: -171

sqlstate: 42815

SQL0172N"<nombre>" no es un nombre de función válido.

Explicación: La sentencia de SQL contiene una función escalar desconocida.

No se puede procesar la sentencia.

Respuesta del usuario: Asegúrese de que ha escrito correctamente el nombre de función.

sqlcode: -172

sqlstate: 42601

SQL0176NEl segundo, tercer o cuarto argumento de la función escalar TRANSLATE es incorrecto.

Explicación: La sentencia no es correcta por una o varias de las razones siguientes:

No se puede procesar la sentencia.

Respuesta del usuario: Asegúrese de que el segundo, tercer y cuarto argumento de la función escalar TRANSLATE tienen valores correctos.

sqlcode: -176

sqlstate: 42815

SQL0180NLa sintaxis de la representación de serie de un valor de fecha/hora no es correcta.

Explicación: La representación de serie de un valor de fecha, hora o indicación de la hora cumple con la sintaxis del tipo de datos especificado o implícito.

No se puede procesar la sentencia.

Respuesta del usuario: Asegúrese de que la sintaxis del valor de fecha, hora o indicación de la hora cumple con la sintaxis de su tipo de datos. Si la serie no está destinada a ser un valor de fecha, hora o indicación de la hora, asegúrese de que al utilizarla no implique estos tipos de datos.

Usuarios del sistema federado: el problema puede ser debido a un error en la representación de la fecha/hora de la fuente de datos. Si la razón es desconocida, aísle el problema en la fuente de datos que no puede procesar la petición, consulte la publicación Problem Determination Guide y examine las restricciones de la representación de la fecha/hora para esa fuente de datos.

sqlcode: -180

sqlstate: 22007

SQL0181NLa representación de serie de un valor de fecha/hora está fuera de rango.

Explicación: La representación de serie de un valor de fecha, hora o indicación de la hora contiene un valor que está fuera de rango.

Este error podría deberse a que se ha tratado de acceder a un valor de fecha/hora desde una aplicación que utiliza un código de país cuyo formato de fecha/hora es distinto al que emplea la aplicación que creó dicho valor. Por ejemplo, un valor de fecha y hora de serie almacenado en el formato dd/mm/aaaa no será válido cuando lo lea una aplicación que espera que su formato sea mm/dd/aaaa.

Los rangos correctos para los valores de fecha, hora o indicación de la hora son los siguientes:

Usuarios del sistema federado: el problema puede ser debido a un error en la representación de fecha/hora en la fuente de datos. En la documentación que acompaña a la fuente de datos hallará los rangos válidos de fecha y de hora de la fuente de datos. Si la razón es desconocida, aísle el problema en la fuente de datos que no puede procesar la petición (consulte la publicación Problem Determination Guide) y examine las restricciones de representación de la fecha/hora para esa fuente de datos.

No se puede procesar la sentencia.

Respuesta del usuario: Asegúrese de que el valor esté dentro del rango válido y de que el formato de fecha y hora de la aplicación sea el mismo que el valor de la serie.

sqlcode: -181

sqlstate: 22007

SQL0182NUna expresión con un valor de fecha/hora o una duración asignada no es válida.

Explicación: En la expresión especificada se ha utilizado de forma incorrecta una fecha, hora, indicación de la hora o una duración etiquetada.

No se puede procesar la sentencia.

Respuesta del usuario: Revise la sentencia de SQL para determinar la causa del problema y corrija la sentencia.

sqlcode: -182

sqlstate: 42816

SQL0183NEl resultado de una operación aritmética o función escalar de fecha/hora no se encuentra dentro del rango válido de fechas.

Explicación: El resultado de una operación aritmética es una fecha o una duración de indicación de la hora que está fuera del rango que va de 0001-01-01 a 9999-12-31.

No se puede ejecutar la sentencia.

Respuesta del usuario: Revise la sentencia de SQL para determinar la causa del problema. Si el problema depende de los datos, revise los datos procesados en el momento en que se produjo el error.

sqlcode: -183

sqlstate: 22008

SQL0187NLa referencia a un registro especial de fecha/hora actual no es válida.

Explicación: Se ha detectado una indicación de error procedente del sistema operativo al recuperar información de fecha/hora.

Respuesta del usuario: Asegúrese de que los valores de huso horario y de reloj TOD del sistema son correctos.

sqlcode: -187

sqlstate: 22506

SQL0190NALTER TABLE "<nombre-tabla>" especificó atributos para la columna "<nombre-columna>" que no son compatibles con la columna existente.

Explicación: Los atributos especificados en la cláusula ALTER COLUMN para la columna "<nombre-columna>" de la tabla "<nombre-tabla>" en una sentencia ALTER TABLE no son compatibles con los atributos de la columna existente. Se devolvió el error por una de las razones siguientes.

No se puede procesar la sentencia.

Respuesta del usuario: Haga que el atributo especificado sea compatible con la columna existente, elimine la especificación de atributo o especifique un nombre de columna diferente.

sqlcode: -190

sqlstate: 42837

SQL0191NSe ha producido un error debido a un carácter MBCS fragmentado.

Explicación: Entre las causas posibles se incluyen:

  1. Los datos de usuario contenían un carácter de múltiples bytes formado incorrectamente. Por ejemplo, se ha encontrado el primer byte de un carácter DBCS, pero no el segundo carácter.
  2. Una función escalar como, por ejemplo, SUBSTR o POSSTR ha truncado incorrectamente una serie multibyte. Para estas funciones, los valores de inicio y longitud deben ser correctos en lo referente a los bytes, en el contexto de la página de códigos de la base de datos. Para una base de datos Unicode, una causa normal de esto podría ser que el inicio o la longitud de una serie UTF-8 fuesen incorrectos.
  3. Una función escalar como, por ejemplo, TRANSLATE puede haber cambiado la serie multibyte.

Usuarios del sistema federado: también la fuente de datos puede detectar esta situación.

Respuesta del usuario:

  1. Corrija los datos de entrada y vuelva a intentarlo.
  2. Cambie los valores de inicio y longitud de tal manera que cuando se conviertan los caracteres a la página de códigos de la base de datos, no se trunquen incorrectamente los caracteres multibyte.
  3. Corrija la función TRANSLATE errónea.

Usuarios del sistema federado: si los datos son correctos, aísle el problema en la fuente de datos que no puede procesar la petición (consulte la publicación Problem Determination Guide) y examine las restricciones DBCS de esa fuente de datos. Si los datos son aparentemente correctos, póngase en contacto con el servicio técnico de IBM para obtener ayuda.

sqlcode: -191

sqlstate: 22504

SQL0193NEn una sentencia ALTER TABLE, la columna "<nombre-columna>" se ha especificado como NOT NULL y no se ha especificado la cláusula DEFAULT o se ha especificado como DEFAULT NULL.

Explicación: Cuando se añaden nuevas columnas a una tabla existente, se debe asignar un valor a la nueva columna para todas las filas existentes. Por omisión, se asigna el valor nulo. Sin embargo, puesto que la columna se ha definido como NOT NULL, debe definirse un valor diferente de nulo.

Respuesta del usuario: Elimine la restricción NOT NULL de la columna o proporcione un valor por omisión que no sea nulo para la columna.

sqlcode: -193

sqlstate: 42601

SQL0197NNo se permite un nombre de columna calificado en la cláusula ORDER BY.

Explicación: La cláusula ORDER BY de una selección completa que incluye un operador de conjunto (UNION, EXCEPT, INTERSECT) no puede tener nombres de columna calificados.

Respuesta del usuario: Asegúrese de que todos los nombres de columnas de la cláusula ORDER BY son no calificados.

sqlcode: -197

sqlstate: 42877

SQL0198NLa serie de sentencias de la sentencia PREPARE o EXECUTE IMMEDIATE está en blanco o vacía.

Explicación: La variable del sistema principal objeto de la sentencia PREPARE o EXECUTE IMMEDIATE contiene todo blancos o es una serie vacía.

No se ha podido completar la sentencia PREPARE o EXECUTE IMMEDIATE.

Respuesta del usuario: Corrija la lógica del programa para asegurarse de que se suministra una sentencia de SQL válida en el operando de la sentencia PREPARE o EXECUTE IMMEDIATE antes de que se ejecute.

sqlcode: -198

sqlstate: 42617

SQL0199NLa utilización de la palabra reservada "<palabra clave>" después de "<texto>" no es válida. Los símbolos esperados son: "<lista-símbolos>".

Explicación: Se ha detectado un error de sintaxis en la sentencia de SQL en el punto en que aparece la palabra reservada "<palabra clave>" después de "<texto>". El campo "<texto>" indica los 20 caracteres de la sentencia de SQL que preceden a la palabra reservada. Puede que las cláusulas de la sentencia estén en un orden erróneo.

Como ayuda al programador, se proporciona una lista parcial de símbolos válidos en el campo SQLERRM del SQLCA como "<lista-símbolos>". Esta lista da por supuesto que la sentencia es correcta hasta ese punto.

No se puede procesar la sentencia.

Respuesta del usuario: Revise la sentencia en el área de la palabra clave. Añada dos puntos o un delimitador de SQL, si falta. Compruebe que las cláusulas estén en el orden correcto. Si la palabra reservada identificada en los mensajes se lista como palabra reservada, conviértala en un identificador delimitado.

NOTA: Este error sólo afecta a los releases de DB2 anteriores a la Versión 2.

sqlcode: -199

sqlstate: 42601


[ Principio de página | Página anterior | Página siguiente | Contenido | Índice ]