Error generating PLSQL file on oracle!

Asked

Viewed 407 times

0

Code

CREATE OR REPLACE PROCEDURE CRIARARQUIVOTXT AS
  Arquivo_saida  UTL_File.File_Type;
  Dir_Arq   VARCHAR2(60);

Cursor cur_arq is 
  Select f.NOME from tfuncionario f;

BEGIN

-- Diretorio do Arquivo
Dir_Arq := 'C:\Users\xxxxxx\Documents\testes';

-- Abrindo o arquivo para a gravação
Arquivo_saida  := UTL_File.Fopen(Dir_Arq, 'teste.txt','w' );

-- 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 CRIARARQUIVOTXT;

Error message

inserir a descrição da imagem aqui

  • Select f.NAME Line from tfuncionario f; error is that "line" should be on cursor.

  • How do I correct that ?

  • fixed: Cursor cur_arq is Select f.NAME line from tfuncionario f ;

1 answer

0


The solution to the problem was line code:

Cursor cur_arq is 
   Select f.NOME linha from tfuncionario f

Browser other questions tagged

You are not signed in. Login or sign up in order to post.