En un comentario dijiste:
La documentación de getSubString
establece que:
Con una función simple para generar y devolver un CLOB, puedo recuperarlo a través de JDBC (ojdbc5
o ojdbc6
) sin problemas, ya sea con getCLOB()
o getString()
. Pero si trato de asignar el Oracle.sql.CLOB
recuperado con getCLOB
a una String
usando
String x = getSubString(0, clob.length());
luego también obtengo el Invalid argument(s) in call
error. Simplemente cambiando eso a:
String x = getSubString(1, clob.length());
obras. Entonces parece no tener nada que ver con la asignación temporal en la función o el tamaño de CLOB. No entiendo por qué no tuviste problemas con los CLOB más pequeños. ¿Quizás tu lógica simplemente no dio en el blanco si fueran pequeños?
Mientras tanto, ha solucionado esto con clob.getCharacterStream().read()
, por lo que esto puede ser un poco irrelevante ahora.