Estoy escribiendo un archivo grande> 7MB desde un procedimiento almacenado de Oracle y los requisitos son no tener caracteres de terminación de línea (sin retorno de carro/avance de línea) al final de cada registro.Oracle PL/SQL UTL_FILE.PUT buffering
He escrito un procedimiento almacenado utilizando UTL_FILE.PUT y estoy siguiendo cada llamada a UTL_FILE.PUT con un UTL_FILE.FFLUSH. Este procedimiento produce errores con un error de escritura una vez que llego al punto en el que escribí más que el tamaño del búfer (establecido en 32767 como máximo) aunque estoy realizando las llamadas FFLUSH. El procedimiento funciona bien si reemplazo las llamadas PUT con llamadas PUT_LINE.
¿No es posible escribir más que el tamaño del búfer sin un carácter de nueva línea? ¿Si es así, hay alguna solución?
Gracias por aclarar cómo funciona FFLUSH, no había visto la última frase en mis búsquedas. – Dustin
Hola @Ollie, todavía estoy confundido acerca de cómo funciona FFLUSH, para (1 -> 32767 + n), cada vez que lo puse, y me descargo. ¿Por qué debería ser necesaria una nueva línea? ¿Me ayudarías a explicar? – Jaskey