Desde hace algún tiempo tengo una gran duda, como poder generar un archivo plano desde un procedimiento almacenado en ORACLE. Ojala alguien pudiera ayudarme. Mi mail es [email protected].
Gonzalo, tu problema puede ser resuelto a través del package UTL_FILE, el cual te permite escribir las salidas hacia un directorio ya prefijado. OJO: Para ello debes tener presente lo siguiente: 1.- El package UTL_FILE funciona si y solo si el camino a donde vas a escribir existe en la variable UTL_FILE_DIR que está en el init<SID>. Ora de tu Base de Datos; es decir, no puedes escribir en otro camino que no sea el señalado en dicha variable. Si deseas usar otro camino, entonces debes agregárselo a la variable UTL_FILE_DIR, estos cambios implican que debes parar y volver a levantar la BD. Para abrir un archivo: UTL_FILE.FOPEN(camino); Para cerrar la escritura sobre el archivo: UTL_FILE.FCLOSE(camino); 2.- Para escribir al fichero debes utilizar el package DBMS_OUTPUT. Específicamente el procedimiento PUT_LINE para enviar la salida que deseas generar. Ejemplo: DBMS_OUTPUT.PUT_LINE('Esto es una Prueba'); 3.- Previo a todo esto debes habilitar un buffer para el DBMS_OUTPUT. El comando es algo como lo siguiente: DBMS_OUTPUT.ENABLE(200000); El tamaño del buffer lo determinas tu. Comentame tus impresiones.
Super Clara tu ayuda. Voy a implementarla pronto y te haré los comentarios. Muchas gracias. Si en algo puedo ayudarte cuenta conmigo. Saludos desde Chile.