[firebase-br] Inserto com Blob Binary

Diego Bulgarelli diegobulg em gmail.com
Terça Novembro 24 12:50:32 -03 2020


Será que Base64 tem mais performance que ler hexadecimal?
Mas por enquanto eu desisto, vou continuar usando os componentes mesmo
nestes casos.
A mesma imagem em hexa que demora 1 minuto no meu servidor local, demorou
mais de 3 minutos em um terminal com configuração comum e pela rede.
De qualquer forma valeu o aprendizado e descobri também que no firebird 3 o
limite de uma DSQL foi de 65k para 10mb, o que achei muito útil. Pena que
ainda tem o limite de 255 comandos dentro do execute block e updates valem
por 2.
Agradeço a todos pela ajuda :)

Em ter., 24 de nov. de 2020 às 09:14, Gladiston Santana via lista <
lista em firebase.com.br> escreveu:

> O FB4 trará funções de BASE64_[en/de]CODE, daí voce poderá escrever script
> onde os blobs seriam envelopados da forma como encontramos em emails e
> formatos json.
> Mas pessoalmente, se quer velocidade deveria se afastar dos .txt
> interpretados, é um pesadelo em termos de performance.
> ClientDataset é a melhor forma porque faz isso por streamming sem ter que
> ler um arquivo inteiro para memória.
> Mas se for mandatório a forma de scripts SQL então use o iSQL na linha de
> comando, ele é o mais performático e lê em cima do stdin o que significa
> que trabalha por streams também e não precisa carregar um arquivo inteiro
> para a memoria para somente depois começar a processá-lo.
>
> inte+
>
> Em seg., 23 de nov. de 2020 às 10:24, Diego Bulgarelli via lista <
> lista em firebase.com.br> escreveu:
>
> > Entendi, vc teria um exemplo de INSERT passando dados binários com
> > caracteres especiais?
> >
> > Atualmente eu já utilizo clientdataset para carregar o arquivo e salvar
> no
> > banco pelo applyupdates,
> > mas gostaria de fazer isso via SQL sem utilizar o clientdataset como se
> eu
> > estivesse digitando no isql.
> > Afinal se o componente consegue fazer, também deveríamos conseguir fazer
> > né?
> >
> > Pesquisei bastante e não encontrei nenhum exemplo ou documentação mais
> > clara de como fazer isso.
> >
> > Seria muito útil se fosse desenvolvido no Firebird 4 algo como:
> > INSERT INTO TABELA (CODIGO, FOTO) VALUES (1, FILE('C:\TEMP\FOTO.JPG'));
> > De forma que a fbClient.dll passasse o arquivo para o servidor da melhor
> > forma.
> >
> >
> >
> ______________________________________________
> 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://www.firebase.com.br/pesquisa_lista.html
>


-- 

Atenciosamente
Diego Bulgarelli
www.oniro.com.br


Mais detalhes sobre a lista de discussão lista