Era desse cara que eu estava precisando mesmo Chiappa, fiz alguns teste aqui e 
deu certo. Valeu! 

To: oracle_br@yahoogrupos.com.br
From: jlchia...@yahoo.com.br
Date: Wed, 20 Mar 2013 00:08:10 +0000
Subject: [oracle_br] Re: Uso do utl_file.get
















 



  


    
      
      
        Carlos, explica pra gente ** direitinho ** o que é esse "pegar o 
arquivo" que vc quer : SE a sua necessidade é ler o arquivo xml que está no 
servidor Oracle todinho de uma vez E inserir tudo que leu numa só coluna CLOB, 
é Absolutamente Inapropriado vc ler linha-a-linha via UTL_FILE, eu penso - o 
comando Apropriado para isso seria o  dbms_lob.loadclobfromfile , que já lê DE 
UMA VEZ o arquivo inteiro, sim ?? Veja exemplo em 
http://www.datadisk.co.uk/html_docs/oracle/large_objects.htm ....

  CASO o que vc queira não é isso, se vc REALMENTE quiser/precisar ler 
linha-a-linha o arquivo XML (seja por que motivo for), aí é inescapável que na 
package UTL_FILE o limite Máximo de uma linha de texto (e o limite de uma 
string no PL/SQl, by the way)  é Sim cerca de 32 KB : nesse cenário, Não Dá 
para usar UTL_FILE.GET_LINE, vc VAi ter que "quebrar" o acesso, usando as 
funções que lêem pedaços de até 32 KB do arquivo, como por exemplo 
UTL_FILE.GET_RAW e UTL_FILE.FSEEK ...

  

   []s

   

     Chiappa



OBS : claro que desde a versão 9i a Oracle vem adicionando packages e built-ins 
especialistas em manipulação de XML , mas via de regra (dependendo da versão) 
elas podem ser Opcionais, podem não estar instaladas... SE vc nos dizer 
exatamente o que precisa fazer com esse XML E a versão e edição EXATAS do 
database Oracle, talvez possamos indicar uma das built-ins XML do seu 
database...



--- Em oracle_br@yahoogrupos.com.br, Carlos Silva <carlos-csilva@...> escreveu

>

> Gerson, ela tem 44640 caracteres. Existe algum outro método de eu ler esse 
> documento XML?

> 

> > To: oracle_br@yahoogrupos.com.br

> > From: gerson.vasconcelos@...

> > Date: Tue, 19 Mar 2013 17:33:07 -0300

> > Subject: Re: [oracle_br] Uso do utl_file.get

> > 

> > Carlos,

> > 

> > A linha tem mais de 32767 caracteres?

> > Se não, na hora de abrir o arquivo, você informa o tamanho máximo da linha

> > que pode ser lida.

> > 

> > No doc abaixo tem mais detalhes, basicamente, é passas um parâmetro a mais

> > na hora de abrir o arquivo.

> > http://docs.oracle.com/cd/A87860_01/doc/appdev.817/a76936/utl_fil2.htm

> > 

> > Veja o detalhe da função FOPEN, tem o parâmetro max_linesize:

> > 

> > UTL_FILE.FOPEN (   location     IN VARCHAR2,   filename     IN

> > VARCHAR2,   open_mode    IN VARCHAR2,   max_linesize IN

> > BINARY_INTEGER)   RETURN file_type;

> > 

> > A definição dele:

> > 

> > max_linesize

> > 

> > 

> > 

> > Maximum number of characters per line, including the newline character, for

> > this file. (minimum value 1, maximum value 32767).

> > 

> > Quando preciso tratar grandes arquivos, sempre passo 32767 que é o máximo.

> > 

> > 

> > Gerson S. de Vasconcelos Júnior

> > DBA - Oracle Certified

> > Fone: (16) 8176-0468

> > Msn: gerson.vasconcelos@...

> > Skype: gersonvjunior

> > http://www.diaadiaoracle.com.br/

> > 

> > 

> > Em 19 de março de 2013 17:04, Carlos Silva <carlos-csilva@...>escreveu:

> > 

> > > **

> > >

> > >

> > > Boa tarde, pessoal!

> > > Estou usando a função utl_file.get_line no oracle para pegar linhas de um

> > > xml, existe alguma função que eu consiga pegar todo o arquivo de uma vez?

> > > Como estou lendo um XML chega um certo momento da linha que ela estoura.

> > > At.:

> > >

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

> > >

> > >  

> > >

> > 

> > 

> > [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

> > 

> > 

>                                         

> 

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

>





    
     

    
    






                                          

[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


Responder a