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