ORA-01406

Error: ORA-01406: fetched column value was truncated

Causa: In a host language program, a FETCH operation was forced to truncate a character string. The program buffer area for this column was not large enough to contain the entire string. The cursor return code from the fetch was +3.

Acción: Increase the column buffer area to hold the largest column value or perform other appropriate processing.

COMENTARIOS:

por maximilianodamato | 14/11/2011 14:58:38

RE: ORA-01406

ORA-01406: fetched column value was truncated
ORA-06512: at line 31
01406. 00000 - "fetched column value was truncated"

la linea 31 comienza aqui

FOR cursor in
(select b.msg,a.status
from tabla1 a,tabla2 b
where a.id = lc_ref and a.status like 'C' and a.id = b.id
and b.tipo_msg = 'IN')

mas abajo comparamos cursor.msg con otro valor de otro cursor con un campo igual.

el problema es que los msg almacenados en esas columnas exceden el tamaño maximo de de 32767. Las comparaciones se hacen bien hasta cierta cantidad de registros (bastantes) y luego lanza el mensaje de error. los resultados van siendo grabados en un .txt y son correctos.

Prové tomando el id del último registro para el cual salta el mensaje de error y correr la consulta desde ahi hacia abajo y procesa correctamente una cantidad similar de registros y luego vuelve a salir el error.


alguna alternativa o diagnostico?
gracias.