- Este tópico contém 11 respostas, 4 vozes e foi atualizado pela última vez 16 anos, 10 meses atrás por
Rodrigo Mesquita.
-
AutorPosts
-
22 de maio de 2009 às 9:38 pm #86903
LucasEdu
ParticipanteBoa tarde!
Qual é a melhor forma de armazenar um arquivo XML?
Na verdade, eu quero descobrir qual é a melhor forma para armazenar as informações contidas em um arquivo XML que o mesmo vai ser enviado para a SEFAZ, em um projeto nosso do CT-e (Conhecimento de Transporte Eletrônico).
Queria saber se é viável armazenar o XML em um banco de dados como o ORACLE, ou se tem outra forma de armazenagem?
Se alguém puder ajudar eu agradeço!
22 de maio de 2009 às 9:47 pm #86905Thiago Vilhena
Participante[quote=”LucasEdu”:2vwj71lk]Boa tarde!
Qual é a melhor forma de armazenar um arquivo XML?
Na verdade, eu quero descobrir qual é a melhor forma para armazenar as informações contidas em um arquivo XML que o mesmo vai ser enviado para a SEFAZ, em um projeto nosso do CT-e (Conhecimento de Transporte Eletrônico).
Queria saber se é viável armazenar o XML em um banco de dados como o ORACLE, ou se tem outra forma de armazenagem?
Se alguém puder ajudar eu agradeço![/quote]
Voce quer importar esse XML pra dentro do oracle?
Tipo criando tabelas e talz?22 de maio de 2009 às 9:49 pm #86906Ishii
ParticipanteOlá,
Como estruturas de XML podem ser bastante grandes, tenho usado o CLOB para armazenamento delas, pois este datatype suporta até 4 Gb no armazenamento. Sei nesse tipo de caso que o XML pode ser extenso e por isso uso o CLOB.
[]s Ishii
22 de maio de 2009 às 9:51 pm #86907Rodrigo Mesquita
ParticipanteSe vc quiser armazenar o arquivo xml crie um campo blob, se for para armazenar o conteudo do arquivo crie um clob.
22 de maio de 2009 às 10:04 pm #86910LucasEdu
ParticipanteVoce quer importar esse XML pra dentro do oracle?
Tipo criando tabelas e talz?Thiago_est,
Sim, queria importar essas informações do arquivo XML para dentro de uma tabela do oracle, agora como criar uma tabela para inserir esses registros eu já não sei…
Como estruturas de XML podem ser bastante grandes, tenho usado o CLOB para armazenamento delas, pois este datatype suporta até 4 Gb no armazenamento. Sei nesse tipo de caso que o XML pode ser extenso e por isso uso o CLOB.
Ishii,
Esses arquivos XML que estou usando para envio realmente são muito grandes, como é que eu uso o CLOB, poderia me explicar?!?
Grato!
22 de maio de 2009 às 10:11 pm #86911Rodrigo Mesquita
Participantepara criar o campo na tabela
alter table tabela add campoxml blob;
para gravar o arquivo vc pode usar seu front end ou o a package dms_lob.
vc quer gravar o arquivo ou o conteudo do arquivo?
22 de maio de 2009 às 10:14 pm #86912LucasEdu
Participantepara criar o campo na tabela
alter table tabela add campoxml blob;
para gravar o arquivo vc pode usar seu front end ou o a package dms_lob.
vc quer gravar o arquivo ou o conteudo do arquivo?
RodrigoMesquita,
Bom, eu quero gravar o conteudo do arquivo, pelo que entendi eu faria Alter Table XmlCte add InfCte CLOB?
E como eu faria o insert nessa tabela?22 de maio de 2009 às 10:17 pm #86913Rodrigo Mesquita
Participanteisso mesmo…
Agora para gravar o conteudo do xml vc deve utilizar uma rotina para ler o arquivo e gravar o conteudo. Vc pode fazer via banco ou aplicação dependendo da ferramenta que voce usa. Vou procurar aqui um material que tenho sobre oracle XML e te envio.
22 de maio de 2009 às 10:20 pm #86914Ishii
ParticipanteOlá,
O insert é feito via Procedure? Se for deve-se criar uma variavel tipo XMLType e proceder com o insert normal desta variavel no campo CLOB.
[]s Ishii
22 de maio de 2009 às 10:23 pm #86915Thiago Vilhena
Participante[quote=”RodrigoMesquita”:36ojbbff]isso mesmo…
Agora para gravar o conteudo do xml vc deve utilizar uma rotina para ler o arquivo e gravar o conteudo. Vc pode fazer via banco ou aplicação dependendo da ferramenta que voce usa. Vou procurar aqui um material que tenho sobre oracle XML e te envio.[/quote]
Ei lki envia pra min esse material ai tbm cara!!
22 de maio de 2009 às 10:55 pm #86918LucasEdu
Participanteisso mesmo…
Agora para gravar o conteudo do xml vc deve utilizar uma rotina para ler o arquivo e gravar o conteudo. Vc pode fazer via banco ou aplicação dependendo da ferramenta que voce usa. Vou procurar aqui um material que tenho sobre oracle XML e te envio.
RodrigoMesquita,
Ok, me envia sim, estou precisando muito e vai ser muito útil!
O insert é feito via Procedure? Se for deve-se criar uma variavel tipo XMLType e proceder com o insert normal desta variavel no campo CLOB.
Ishii,
Não é com procedure, eu tentei fazer o insert manual..
Ex: INSERT INTO XmlCte(Codigo,InfCte)
VALUES(2, ‘CONTEÚDO TODO DO XML AKI….’)Lembrando que a coluna InfCte é do tipo CLOB, e o conteúdo do XML é gigantesco, só que não consegui inserir, porque deu a mensagem “ORA-01704: string literal too long”
Você sabe como devo proceder?
Se tiver algum exemplo de Procedure pra me passar ajudaria mto..Grato!
22 de maio de 2009 às 11:18 pm #86920Rodrigo Mesquita
ParticipanteLucas Eduardo,
Não achei o artigo, mais nesse link aqui explica como fazer
http://www.glufke.net/oracle/viewtopic. … hlight=xml
-
AutorPosts
- Você deve fazer login para responder a este tópico.