Respuesta: guardar datos en txt Un ejemplo básico:
CREATE OR REPLACE PROCEDURE "EXTRACT" IS
VALOR1 TABLA.CAMPO1%TYPE;
VALOR2 TABLA.CAMPO2%TYPE;
VALOR3 TABLA.CAMPO3%TYPE;
ARCHIVO UTL_FILE.FILE_TYPE;
TEXTO VARCHAR2(1000);
ERRMSG VARCHAR2(500);
CURSOR C_VALORES IS
SELECT CAMPO1,CAMPO2,CAMPO3
FROM TABLA;
BEGIN
OPEN C_VALORES;
ARCHIVO:= UTL_FILE.FOPEN('/path','archivo.txt','W');
LOOP
FETCH C_VALORES INTO VALOR1,VALOR2,VALOR3;
EXIT WHEN C_VALORES%NOTFOUND;
TEXTO:= VALOR1||VALOR2||VALOR3;
UTL_FILE.PUT_LINE(ARCHIVO,TEXTO);
END LOOP;
CLOSE C_VALORES;
UTL_FILE.FCLOSE(ARCHIVO);
EXCEPTION
WHEN UTL_FILE.INVALID_PATH THEN
DBMS_OUTPUT.PUT_LINE('Path Invalido');
WHEN UTL_FILE.INVALID_MODE THEN
DBMS_OUTPUT.PUT_LINE('Modo Invalido');
WHEN UTL_FILE.INVALID_FILEHANDLE THEN
DBMS_OUTPUT.PUT_LINE('Filehandle invalido');
WHEN OTHERS THEN
ERRMSG := SQLERRM;
DBMS_OUTPUT.PUT_LINE('ERROR: '||ERRMSG);
END;
/
Saludos. |