Oracle: UTL_File – Escrevendo em arquivos TXT


Olá galera!
Hoje vamos falar, de como escrever o resultado de uma query em um arquivo TXT. Para realizar tal procedimento, vamos utilizar o UTL_File.
Pessoal, vou passar de forma bem simples o script para saída em TXT.
Declare
Arquivo_Saida  UTL_File.Tile_Type;
Dir_Arq           VARCHAR2(60);
Cursor  cur_arq is Select OWNER||’  ‘||TABLE_NAME as  Linha From All_Tables Where Owner Like‘SYS%’ ;
Begin
– – Diretório onde ficará o arquivo de saída
Dir_Arq := ‘D:\arquivo_testes’;
– – Abrindo o arquivo para a gravação
Arquivo_saida  := UTL_File.Fopen(Dir_Arq, Arquivo_Saida,5000 );
– -Abrindo o cursor para realizar o loop das linhas que irão no arquivo
for Reg_Linha in cur_arq loop
UTL_File.Put_Line(Arquivo_Saida, Reg_linha.Linha);
end loop;
– – Fechando o arquivo
UTL_File.Fclose(Arquivo_Saida);
Dbms_Output.Put_Line(‘Arquivo gerado com sucesso.’);
Exception
WHEN UTL_FILE.INVALID_OPERATION THEN
Dbms_Output.Put_Line(‘Operação inválida no arquivo.’);
UTL_File.Fclose(arquivo_saida);
WHEN UTL_FILE.WRITE_ERROR THEN
Dbms_Output.Put_Line(‘Erro de gravação no arquivo.’);
UTL_File.Fclose(arquivo_saida);
WHEN UTL_FILE.INVALID_PATH THEN
Dbms_Output.Put_Line(‘Diretório inválido.’);
UTL_File.Fclose(arquivo_saida);
WHEN Others THEN
Dbms_Output.Put_Line(‘Problemas na gravação do arquivo.’);
UTL_File.Fclose(arquivo_saida);
End;
Espero ter ajudado mais uma vez!!!
Abraços.

Share

    Deixe uma resposta

    O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

    © 2019 All Rights Reserved. Cooperati.