Escribir en fichero con UTL FILE Oracle 10g XE
Ora.ini
Añadir en el ora.ini
UTL_FILE_DIR=* en el ora ini
Con sys
Creamos el directorio de trabajo, y le damos permisos a nuestro usuario
create or replace directory dir_temp as 'c:\temp'; grant read, write on directory dir_temp to DST; grant execute on UTL_FILE to public;
Con usuario normal
SELECT function FROM JOB ORDER BY function;; DECLARE JOBSFILE UTL_FILE.FILE_TYPE; -- TAKE ALL JOB TITLES FROM JOBS CURSOR JOBSCUR IS SELECT function FROM JOB ORDER BY function; BEGIN -- OPEN FILE FOR WRITING JOBSFILE := UTL_FILE.FOPEN('DIR_TEMP','JOBS.TXT','W'); -- TAKE ONE RECORD FROM CURSOR FOR REC IN JOBSCUR LOOP UTL_FILE.PUT_LINE(JOBSFILE, REC.function); -- WRITE INTO FILE END LOOP; UTL_FILE.FCLOSE(JOBSFILE); -- CLOSE FILE EXCEPTION WHEN OTHERS THEN DBMS_OUTPUT.PUT_LINE( 'ERROR -->' || SQLERRM); END;
Referencias
--Daniel Simao 09:24 2 mar 2012 (UTC)