Fórum Inserindo imagem em campo blob via SQL quot;SEM DELPHI!!!q #44052
07/05/2004
Estive olhando o fórum, e só encontrei respostas para esta dúvida se a pessoa estiver usando o delphi... mas não é o que estou precisando, estou à procura da maneira de fazer duas coisas:
1 - inserir a imagem direto do arquivo por comando SQL puro;
2 - salvar a imagem gravada em um arquivo também por SQL puro;
sendo que pra segunda opção eu precisava verificar se a imagem existe.
se alguém puder ajudar agradeço e muito, pois já faz muito tempo que procuro isso!
Posts
SQL(Structured Query Language), leia-se ´Linguagem de Consulta Estruturada´ é apenas uma linguagem de acesso/manipulação de dados. SQL não é capaz de manipular digamos assim bits e bytes :p
É por isso que a manipulação de BLOB´s se dá sempre com o Auxilio de uma ferramenta externa!
Resumindo, não existe um ´Insert´ que seja capaz de inserir uma imagem em um campo blob, mas existe sim UDF´s por exemplo, que podem auxiliar neste trabalho de uma forma simples e facil que pode até fazer você pensar que se trata do proprio SQL ´inserindo´ tais dados no banco!
Então eu poderia teoricamente dar um insert e passar os bytes do arquivo como parâmetro como se fosse uma string qualquer?
[i:858947d9b4]Teoricamente?[/i:858947d9b4] Teoricamente quase tudo é possivel! Mas na pratica não não! Não é só jogar bytes lá! Mas e ainda que fosse possivel, olhe para a sua 2ª pergunta! Como ler a imagem e grava-la no disco, verificando ainda antes, se a imagem existe! :shock:
Assim como já disse antes, SQL não é pra isso. SQL é uma linguagem ´Auxiliar´, nada mais do que isto!
Na realidade o que eu pretendia era gravar e extrair imagens de um bd firebird sem precisar usar dbcontrols ou datasets, por isso postei ´SEM DELPHI´ porque o pessoal que usa delphi aqui só usa BDE com dbcontrol que na minha opinião é absurdamente mais lento que tratar os dados diretamente sem dbcontrols, fiz muitos testes pra chegar a essa conclusão, mas a questão não é essa, se isso não é possível por sql eu queria descobrir uma outra maneira, eu usaria TIBSQL para gravar e extrair as imagens e isso seria encapsulado em um componente que desenvolvi. Agradeço a ajuda.