escribir un archivo de texto con plsql

—
— Codigo de ejemplo para la creacion de archivos de texto
— Este ejemplo básico toma las columnas resultantes de la consulta y las
— guarda en un archivo de texto
—
— Arturo T
— atocarrunchot at gmail dot com
— www.lecciones.info
—

declare

handler TEXT_IO.FILE_TYPE;

CURSOR mi_cursor IS SELECT campo1, campo2, campo3,…
FROM mi_tabla
WHERE (mis_condiciones);

cadena_a_escribir varchar2(100)

BEGIN
Set_Application_Property(Cursor_Style,’BUSY’);

—
— Abrir un archivo para escritura
—
handler := TEXT_IO.FOPEN(‘archivo.txt’, ‘w’);

FOR res IN Adm LOOP

—
— escribir cadenas en el archivo
—
text_io.PUT_LINE(handler,cadena_a_escribir);

END LOOP;

Set_Application_Property(Cursor_Style,’DEFAULT’);

—
— Cerrar el archivo, una vez se ha escrito todo el contenido
—
TEXT_IO.FCLOSE(handler);

— La siguiente instrucción sólo es por si se desea ver el archivo. Funciona como un ‘start’ de windows
host(‘wordpad archivo.txt’);

EXCEPTION

WHEN no_data_found THEN
text_io.PUT_LINE(handler,’Error archivo entrada’);
TEXT_IO.FCLOSE(handler);
host(‘wordpad Adm01.txt’);

WHEN OTHERS THEN
text_io.PUT_LINE(handler,’Ocurrio este Error: ‘ || SQLERRM);
host(‘wordpad archivo.txt’);
TEXT_IO.FCLOSE(handler);
host(‘wordpad archivo.txt’);

end;

—
— Como puede verse, es muy fácil crear archivos de texto con el contenido de tablas, vistas,…
— Esta opción puede ser utilizada también, si se desea crear archivos html; sólo basta con escribir
— los tag html que sean necesarios.
— Ejemplo para escribir la palabra ‘Hola’ en negrita
— cadena_a_escribir := ‘Hola’
— text_io.PUT_LINE(handler,’‘ || cadena_a_escribir || ‘‘);
—

Leave a Reply