Muda de figura a situação : se vc tem o XMLDB, vc poderia fazer em dois passos : primeiro importar o arquivo XML para uma columa XMLTYPE de uma tabela stage, e depois faria um INSERT INTO tabeladestino (select colunasextraidasdoXML from tabeladestaging); - o XMLDB possui métodos para extrair conteúdo de colunas xmltype.... Vou dar um olhada nos meus documentos e uma pesquisada, e o que achar te mando ....
[]s Chiappa --- Em oracle_br@yahoogrupos.com.br, "Carlos Pinto" <carlos.pintoo@...> escreveu > > Ola Chiappa estive a verificar melhor e parece-me que tenho o XMLDB > instalado. O que aconselhas fazer desde a importação do ficheiro XML até a > inserção de registos em tabela. > > > > select comp_name from dba_registry where comp_name like '%XML%'; > > > > COMP_NAME > Oracle XML Database > > > > > > > > > > Muito Obrigado. > > Carlos Pinto > > > > De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Em > nome de J. Laurindo Chiappa > Enviada: segunda-feira, 28 de Maio de 2012 17:49 > Para: oracle_br@yahoogrupos.com.br > Assunto: [oracle_br] Re: Importar XML > > > > > > okdoc, agora tá Bem mais claro, não é ? Muito bem : primeiro, fosse uma > qtdade significativa eu contra-recomendaria de cara XML (entre outros > pontos, não é possível se paralelizar comn cada sessão lendo uma linha, vc > tem que perder tempo "montando" o registro, etc), mas 800 registros é café > pequeno... > Muito bem, se vc tivesse o XMLDB instalado haveria outras opções, mas como > vc não tem imho o que vc poderia fazer é ler o arquivo (via UTL_FILE, > provavelmente) e extrair os dados do XML com EXTRACT : > http://musingsofaprogrammingaddict.blogspot.com.br/2010/06/oracles-extractva > lue-function-and-xml.html é um exemplo de extract, e para UTL_FILE consulte > os manuais de referência... > > []s > > Chiappa > > --- Em oracle_br@yahoogrupos.com.br <mailto:oracle_br%40yahoogrupos.com.br> > , "Carlos Pinto" <carlos.pintoo@> escreveu > > > > Ola Chiappa tens razão . > > > > > > > > > > ==> vc TEM o componente de XML, o XMLDb, instalado, setado e ativo, ou não > > ??? Não, tenho. O ficheiro estará num servidor FTP ao qual eu importarei > > para o servidor Oracle > > > > ==> vc TEM JAVA nesse database ou não ?? Não > > > > ==> o arquivo a importar está numa máquina cliente ou no servidor Oracle > ?? > > Servidor Oracle > > > > ==> essa importação é algo que vc vai fazer uma vez só (e portanto em tese > > pode se usar tools externas não-programadas, tipo SQL Developer), ou é > algo > > Rotineiro, e que portanto demanda Automação ?? Vai ser Rotineiro - Diario > > > > > > ==> o tamanho do arquivo XML a ler, é qual ? Isto se pergunta para que, em > > caso de arquivo anormalmente grande, já tentemos dar uma solução > > Otimizada... -> Deve ter aproximadamente cerca de 800 Registos Diarios > > > > ==> o arquivo XML em questão ESTÁ bem formado ?? Nos mostre uma versão > menor > > dele, contendo o trailer, o header e uns poucos registros completos.... > > > > e o MAIS IMPORTANTE : > > > > =====>>>> Exatamente O QUE vc quer fazer com ele : vc quer apenas ler e > > grava o arquivo .XML todo numa única coluna string large (CLOB ou > XML-type) > > de um registro de uma tabela Oracle, OU vc quer interpretar, ie : vc quer > > que cada coluna de cada registro do arquivo XML corresponda a uma coluna > de > > um registro de uma tabela Oracle, e aí os dados devem ser carregados poara > > essa tabela Oracle, em ordem ??? <<==== > > > > > > > > Quero carregar os campos para uma tabela separada por campos. > > > > > > > > > > > > > > > > > > > > <?xml version="1.0" encoding="UTF-8"?> > > > > -<LGFDocument xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > > > xmlns:xsd="http://www.w3.org/2001/XMLSchema">-<AccessRequest><DocumentType>1 > > > </DocumentType><Version>1.0</Version><EntityId>LGF</EntityId><TimeStamp>2012 > > > -05-23T13:09:50</TimeStamp><Reference1/><Reference2/><Reference3/><Reference > > 4/><Reference5/><ReplyEmailAddress>informatica@ > <mailto:informatica@%3c/ReplyEmailAddress%3e%3c> </ReplyEmailAddress>< > > > FileNumber>0000008074</FileNumber></AccessRequest>-<Consignment><Ref>0000760 > > > 42380</Ref><DocNumber>0</DocNumber><BarCodeConstant>N</BarCodeConstant><Serv > > ices>1</Services><ProductType>2 > > > </ProductType><Pieces>1</Pieces><Weight>1000</Weight><WeightUnit>GR</WeightU > > > nit><PaymentType>1</PaymentType><CashOnDeliveryValue>0</CashOnDeliveryValue> > > > <CashOnDeliveryCurrencyCode>EUR</CashOnDeliveryCurrencyCode><CashOnDeliveryO > > bs>TLM: > > 989058417</CashOnDeliveryObs><SentBy>ruiv</SentBy><ConsigneeDep>STALL > > > </ConsigneeDep><ConsigneeNumber/><ConsigneeReference/><ConsigneeReference2/> > > <ConsigneeName>CARLOS</ConsigneeName><AttentionOf/><ConsigneeAddress>AV > > MIGUEL MAGALHAES N99 PAREDES TLM: > > > 956058417</ConsigneeAddress><ConsigneeCity>BEST</ConsigneeCity><ConsigneeZip > > > Code>4580-000</ConsigneeZipCode><ConsigneeCountryCode>PT</ConsigneeCountryCo > > de><ConsigneeTelephone/><ConsigneeFax/><ConsigneeEmail/><Obs1>TLM: > > > 985658417</Obs1><Obs2/><Obs3/><IDMaster/><paletesOrdem/><Recolha>False</Reco > > lha><IDRota/></Consignment></LGFDocument> > > > > > > > > Com os melhores cumprimentos, > > > > Carlos > > > > > > > > De: oracle_br@yahoogrupos.com.br <mailto:oracle_br%40yahoogrupos.com.br> > [mailto:oracle_br@yahoogrupos.com.br <mailto:oracle_br%40yahoogrupos.com.br> > ] Em > > nome de J. Laurindo Chiappa > > Enviada: segunda-feira, 28 de Maio de 2012 14:50 > > Para: oracle_br@yahoogrupos.com.br <mailto:oracle_br%40yahoogrupos.com.br> > > > Assunto: [oracle_br] Re: Importar XML > > > > > > > > > > > > Detalhes, plz, sempre os sanguinolentos detalhes, a verdade está nos > > detalhes.... > > > > ==> vc TEM o componente de XML, o XMLDb, instalado, setado e ativo, ou não > > ??? > > > > ==> vc TEM JAVA nesse database ou não ?? > > > > ==> o arquivo a importar está numa máquina cliente ou no servidor Oracle > ?? > > > > ==> essa importação é algo que vc vai fazer uma vez só (e portanto em tese > > pode se usar tools externas não-programadas, tipo SQL Developer), ou é > algo > > Rotineiro, e que portanto demanda Automação ?? > > > > ==> o tamanho do arquivo XML a ler, é qual ? Isto se pergunta para que, em > > caso de arquivo anormalmente grande, já tentemos dar uma solução > > Otimizada... > > > > ==> o arquivo XML em questão ESTÁ bem formado ?? Nos mostre uma versão > menor > > dele, contendo o trailer, o header e uns poucos registros completos.... > > > > e o MAIS IMPORTANTE : > > > > =====>>>> Exatamente O QUE vc quer fazer com ele : vc quer apenas ler e > > grava o arquivo .XML todo numa única coluna string large (CLOB ou > XML-type) > > de um registro de uma tabela Oracle, OU vc quer interpretar, ie : vc quer > > que cada coluna de cada registro do arquivo XML corresponda a uma coluna > de > > um registro de uma tabela Oracle, e aí os dados devem ser carregados poara > > essa tabela Oracle, em ordem ??? <<==== > > > > Dependendo das suas respostas, a Recomendação pode e vai variar.... > > > > []s > > > > Chiappa > > > > --- Em oracle_br@yahoogrupos.com.br > <mailto:oracle_br%40yahoogrupos.com.br> > <mailto:oracle_br%40yahoogrupos.com.br> > > , "Carlos Pinto" <carlos.pintoo@> escreveu > > > > > > Ola a todos, como posso importar um ficheiro XML para uma tabela? Oracle > > 10G > > > 10.2.0.3.0 > > > > > > > > > > > > Obrigado, > > > > > > Carlos > > > > > > > > > > > > > > > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > > > > > > > > > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > > > > > [As partes desta mensagem que não continham texto foram removidas] >