[oracle_br] Proc - Utl_File

2010-03-18 Por tôpico Matheus Malta
Galera... Seguinte...

Tô aprendendo a manipular arquivos usando a package UTL_FILE porém estou 
encontrando dificuldades...

Desenvolvi esta proc:
create or replace procedure pr_lotofacil
(v_ini in date, v_fim in date)

is

v_dezena number(2);
v_qtde number(5);
v_file UTL_FILE.FILE_TYPE; --Declara variável para o arquivo

cursor c_num is
select dezenas, count(1)
from lotofacil
where dt_concurso between v_ini and v_fim
having count(1)  1
group by dezenas;

BEGIN
v_file := utl_file.fopen('H:\Lotofacil\','Numeros.txt','W');
open c_num;
loop
fetch c_num into v_dezena, v_qtde;
exit when c_num%notfound;
utl_file.put_line(v_file,v_dezena||' - '||v_qtde);
end loop;
close c_num;


Exception
when others then
dbms_output.put_line(sqlerrm);
utl_file.fclose(v_file);

end pr_lotofacil;

No entanto, ela está apresentando o seguinte erro:

Compilation errors for PROCEDURE MATHEUS.PR_LOTOFACIL
Error: PLS-00201: o identificador 'UTL_FILE' deve ser declarado
Line: 8
Text: v_fileUTL_FILE.FILE_TYPE;
Error: PL/SQL: Item ignored
Line: 8
Text: v_fileUTL_FILE.FILE_TYPE;
Error: PLS-00320: a declaração do tipo desta expressão está incompleta ou 
incorreta
Line: 18
Text: v_file := utl_file.fopen('H:\Lotofacil\','Numeros.txt','W');
Error: PL/SQL: Statement ignored
Line: 18
Text: v_file := utl_file.fopen('H:\Lotofacil\','Numeros.txt','W');
Error: PLS-00320: a declaração do tipo desta expressão está incompleta ou 
incorreta
Line: 23
Text: utl_file.put_line(v_file,v_dezena||' - '||v_qtde);
Error: PL/SQL: Statement ignored
Line: 23
Text: utl_file.put_line(v_file,v_dezena||' - '||v_qtde);
Error: PLS-00320: a declaração do tipo desta expressão está incompleta ou 
incorreta
Line: 31
Text: utl_file.fclose(v_file);
Error: PL/SQL: Statement ignored
Line: 31
Text: utl_file.fclose(v_file);

Alguém pode me ajudar a identificar o pq?

Estou utilizando o Oracle 10g XE...Western Europe..

Vlw..

Matheus Malta


[As partes desta mensagem que não continham texto foram removidas]



Re: [oracle_br] Proc - Utl_File

2010-03-18 Por tôpico Fernando Garatini da Silva
faz assim
declara
  V_CAMINHO  VARCHAR2(100) := '\\10.135.163.109\ARQUIVOS\CARGAS';
  V_ARQUIVO  VARCHAR2(30) :=  'ALT_USUARIO.TXT';
  V_ARQ  UTL_FILE.FILE_TYPE;
  V_LINHAVARCHAR2(500);

BEGIN
  
  -- ABRE ARQUIVO
  
  V_ARQ := UTL_FILE.FOPEN(V_CAMINHO, V_ARQUIVO, 'W');
  
  -- LÊ AS TABELAS E GERA AS LINHAS PARA O ARQUIVO
  

 V_LINHA := resultado do sql;
 UTL_FILE.PUT_LINE(V_ARQ, V_LINHA);  --- insere linha

 COMMIT;
 UTL_FILE.FCLOSE(V_ARQ);  -- fecha arquivo



Obrigado Pela Atenção!

Fernando Garatini da Silva
Analista de Sistemas/Oracle
Phone:  55 +11 8642 8338 - SP
MSN:  garat...@hotmail.com
E_MAIL: fgarat...@gmail.com
Skype: fernando_garatini


Em 18 de março de 2010 11:43, Matheus Malta maltamath...@gmail.comescreveu:



 Galera... Seguinte...

 Tô aprendendo a manipular arquivos usando a package UTL_FILE porém estou
 encontrando dificuldades...

 Desenvolvi esta proc:
 create or replace procedure pr_lotofacil
 (v_ini in date, v_fim in date)

 is

 v_dezena number(2);
 v_qtde number(5);
 v_file UTL_FILE.FILE_TYPE; --Declara variável para o arquivo

 cursor c_num is
 select dezenas, count(1)
 from lotofacil
 where dt_concurso between v_ini and v_fim
 having count(1)  1
 group by dezenas;

 BEGIN
 v_file := utl_file.fopen('H:\Lotofacil\','Numeros.txt','W');
 open c_num;
 loop
 fetch c_num into v_dezena, v_qtde;
 exit when c_num%notfound;
 utl_file.put_line(v_file,v_dezena||' - '||v_qtde);
 end loop;
 close c_num;

 Exception
 when others then
 dbms_output.put_line(sqlerrm);
 utl_file.fclose(v_file);

 end pr_lotofacil;

 No entanto, ela está apresentando o seguinte erro:

 Compilation errors for PROCEDURE MATHEUS.PR_LOTOFACIL
 Error: PLS-00201: o identificador 'UTL_FILE' deve ser declarado
 Line: 8
 Text: v_file UTL_FILE.FILE_TYPE;
 Error: PL/SQL: Item ignored
 Line: 8
 Text: v_file UTL_FILE.FILE_TYPE;
 Error: PLS-00320: a declaração do tipo desta expressão está incompleta ou
 incorreta
 Line: 18
 Text: v_file := utl_file.fopen('H:\Lotofacil\','Numeros.txt','W');
 Error: PL/SQL: Statement ignored
 Line: 18
 Text: v_file := utl_file.fopen('H:\Lotofacil\','Numeros.txt','W');
 Error: PLS-00320: a declaração do tipo desta expressão está incompleta ou
 incorreta
 Line: 23
 Text: utl_file.put_line(v_file,v_dezena||' - '||v_qtde);
 Error: PL/SQL: Statement ignored
 Line: 23
 Text: utl_file.put_line(v_file,v_dezena||' - '||v_qtde);
 Error: PLS-00320: a declaração do tipo desta expressão está incompleta ou
 incorreta
 Line: 31
 Text: utl_file.fclose(v_file);
 Error: PL/SQL: Statement ignored
 Line: 31
 Text: utl_file.fclose(v_file);

 Alguém pode me ajudar a identificar o pq?

 Estou utilizando o Oracle 10g XE...Western Europe..

 Vlw..

 Matheus Malta

 [As partes desta mensagem que não continham texto foram removidas]

 




-- 
Obrigado Pela Atenção!

Fernando Garatini da Silva
Analista de Sistemas/Oracle
Phone:  55 +11 8642 8338 - SP
MSN:  garat...@hotmail.com
E_MAIL: fgarat...@gmail.com
Skype: fernando_garatini


[As partes desta mensagem que não continham texto foram removidas]





--
Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira 
responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--
Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » 
Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: 
http://www.oraclebr.com.br/  

 Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

* Para sair deste grupo, envie um e-mail para:
oracle_br-unsubscr...@yahoogrupos.com.br

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html