[firebase-br] RES: XML no campo BLOB

Jonas Rodrigo Pacheco jonas.pacheco em tecnicon.com.br
Sex Nov 30 08:51:20 -03 2012


Obrigado pelo retorno,

No entanto o XML é gerado a nível de banco de dados, ou seja, não posso tratar isso no nível da aplicação.

A procedure funciona da seguinte forma, guarda um histórico do valor/xml do campo:

create or alter procedure RXML (
    SEQ integer,
    CAMPO varchar(200),
    TIPO char(1),
    ANTERIOR blob sub_type 1 segment size 80,
    ATUAL blob sub_type 1 segment size 80)
returns (
    REGISTRO blob sub_type 1 segment size 80)
as
declare variable XML blob sub_type 1 segment size 80;
begin
  XML= 'C=|'||:campo||'| T=|'||:tipo||'| O=|'||Coalesce(:anterior,'')||'| N=|'||Coalesce(:atual,'');
  registro = '<ROW '||:XML||'|/>';
  suspend;
end^


Jonas Rodrigo Pacheco

-----Mensagem original-----
De: lista [mailto:lista-bounces em firebase.com.br] Em nome de Carlos H. Cantu
Enviada em: quinta-feira, 29 de novembro de 2012 10:18
Para: FireBase
Assunto: Re: [firebase-br] XML no campo BLOB

O problema não deve estar no Firebird, e sim no seu componente de acesso, ou na forma que você está carregando/recuperando o conteúdo no blob.

O Firebird grava o que chegar pra ele gravar. No entanto, seu componente de acesso pode estar tratando os caracteres especiais como sendo final de arquivo/linha/etc, truncando o conteúdo.

[]s
Carlos H. Cantu
www.FireBase.com.br - www.firebirdnews.org www.warmboot.com.br - blog.firebase.com.br

JRP> Senhores,

JRP> Estou armazenando arquivo XML em um campo da tabela do tipo BLOB.

JRP> CREATE TABLE NFXML (
JRP>     SNFE      INTEGER NOT NULL,
JRP>     NFXML         BLOB SUB_TYPE 0 SEGMENT SIZE 80);

JRP> INSERT INTO NFXML (SNFE, NEXML) VALUES (:S, :VXML);

JRP> Pórem alguns arquivos XML possuem algum caracter especial que 
JRP> aparentemente conflita com o Firebird e consequentemente na tabela 
JRP> o arquivo BLOB tem só uma parte gravada (ou seja, fica incompleto, 
JRP> pois só grava a parte até chegar ao caracter especial).

JRP> Alguma sugestão? Eu não informo charset (chaset=NONE).

JRP> Desde já agradeço a atenção de todos!

JRP> Jonas Rodrigo Pacheco

JRP> ______________________________________________
JRP> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br 
JRP> Para saber como gerenciar/excluir seu cadastro na lista, use:
JRP> http://www.firebase.com.br/fb/artigo.php?id=1107
JRP> Para consultar mensagens antigas: http://firebase.com.br/pesquisa


______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br Para saber como gerenciar/excluir seu cadastro na lista, use: http://www.firebase.com.br/fb/artigo.php?id=1107
Para consultar mensagens antigas: http://firebase.com.br/pesquisa






Mais detalhes sobre a lista de discussão lista