No meu link de downloads gratuitos(HTTP://cc.codegear.com/author/795118), no 
primeiro exemplo, no cadastro de cliente eu trabalho com fotos dos clientes.

E está funcional e otimizado a forma de se trabalhar com persistência no banco 
de imagens.

Eu apenas recomendaria, que no caso de produção, não use a mesma tabela de 
clientes para armazenar a foto, mas que crie uma tabela clientes foto, não 
somente pela melhora do armazenamento, mas também pela organização e dificulta 
que algum estagiário desavisado ou programador inexperiente aplique um select * 
na tabela de clientes e trafegue aquele montão de fotos desnecessariamente :D.

Sobre pesar no banco, olha, é claro que bancos de dados com imagens o fazem 
crescer mais, mas o fato do banco ficar lento, está mais relacionado com a sua 
construção, manutenção e configuração do que conter fotos ou não. Um banco de 
dados sem fotos corre os mesmos riscos de ser lento.

Abs

BL

From: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] On Behalf Of 
rafaelpinto19
Sent: terça-feira, 6 de maio de 2008 19:17
To: delphi-br@yahoogrupos.com.br
Subject: [delphi-br] Re: Gravar imagens no Banco Interbase/Firebir


Alessandro, Ricardo e Bruno e aos demais membros do Grupo, quero
agradecer por tentarem me expilcar e ajudar a resolver este problema,
Estou em fase de aprendizagem ainda. Eu tentei um código, mas não deu
certo. Mas perece q eu estou no caminho certo. No Primeiro momento eu
até pensei que consegui gravar a imagen capturada, pensei em ter
conseguindo resolver o problema. Sempre quando faço uma consulta para
retornar a foto da pessoa resgitrada no Sistema, sempre aparece a foto
da "última" imagem capturada. Ou seja...se eu registrei João, Maria e
José respectivamente e capturei a foto de cada um deles, mesmo eu
consultando o João, sempre me rotorna a imagem do José, por ter sido o
"último" quem o sistema capturou a imagem. Postei esse meu código para
ver onde eu estou errando e ver se vcs conseguem me ajudar a resolver
este problema.

procedure TPrincipal.BtnGravarClick(Sender: TObject);

begin
//imgFoto.Visible:= True;
imgFoto.Picture.Bitmap.LoadFromFile(Camera1.FichierImage);
Query.Close;
Query.SQL.Clear;
Query.SQL.Add('insert into VISITA(CODIGO,NOME,FOTO) values
(:CODIGO,:NOME,:FOTO)');

Query.ParamByName('FOTO').LoadFromFile(Camera1.FichierImage,ftBlob);
//:= imgFoto.Picture.Bitmap.LoadFromFile(Camera1.FichierImage);
Query.ParamByName('CODIGO').AsString := Edit1.Text;
Query.ParamByName('NOME').AsString := Edit2.Text;
Query.ExecSQL;
Query.Transaction.Commit;
Query.Transaction.Active := true;
end.

Onde:

* imgFoto = TImage(Image), é o 6º componente da palheta Aditional no
Delphi e responsável pela visualização de imagens, fotos e etc.
* Camera1 =TCamera(Câmera), É o único componente da palheta Yves e é
responsável pela visualização de imagens de uma Webcam ou Câmeras
digitais. Nela conseguimos fazer a devidas e necessárias capturas.

e esse é o código que eu uso na para visualizar os dados e foto do
registro consultado.

procedure TProcFoto.DBGrid1DblClick(Sender: TObject);
begin
Principal.Edit1.Text := Query1.fieldbyname('CODIGO').AsString;
Principal.Edit2.Text := Query1.fieldbyname('NOME').AsString;
Principal.imgFoto.Picture.Bitmap.LoadFromFile(Principal.Camera1.FichierImage);
close;
end;

Onde:
* Principal é o nome do Form de destino onde estão os edtis que vão
mostrar as dados a serem pesquisados e a foto do registro a ser mostrada.


--- Em delphi-br@yahoogrupos.com.br<mailto:delphi-br%40yahoogrupos.com.br>, 
"Alessandro DUARTE de Moraes"
<[EMAIL PROTECTED]> escreveu
>
> Essa discussão é bem relevante, então cito alguns pontos a favor:
>
> 1) Para acessos remotos, isto é, o servidor está em uma localidade e
o cliente em outra, não vejo uma forma mais coerente do que ter a
imagem tb no banco de dados
> 2) Menos "gambiarra" qdo for executar uma select para relatórios ...
>
> Para completar, sugiro que seja criada uma tabela no banco que seja
dedicada a armazenar imagens, apenas com 2 campos: id INTEGER e imagem
BLOB
> e nas tabelas que são necessárias ter uma ou mais imagens basta
colocar campos referenciando ao id desta tabela de imagens.
>
> Tive experiências traumáticas com as imagens em uma pasta ... mas
uma solução bem elaborada pode dar certo, exceto no caso do item 1 que
citei acima.
>
> Abraços,
>
> Alessandro DUARTE de Moraes
> A.C. Santa Casa do Rio Grande.
> http://www.santacasarg.com.br
>
> ----- Original Message -----
> From: Ricardo Cabral
> To: delphi-br@yahoogrupos.com.br<mailto:delphi-br%40yahoogrupos.com.br>
> Sent: Monday, May 05, 2008 2:02 PM
> Subject: RE: [delphi-br] Gravar imagens no Banco Interbase/Firebir
>
>
> Bruno,
>
> Gravando no banco não deixaria o mesmo muito "pesado" ?
>
>
>
> Bruno Lichot <[EMAIL PROTECTED]> escreveu:
> Eu prefiro gravar imagens no banco, é mais rápido de trabalhar e
no meu modo de ver mais seguro também.
>
> Abs
>
> BL
>
> From: delphi-br@yahoogrupos.com.br<mailto:delphi-br%40yahoogrupos.com.br>
[mailto:delphi-br@yahoogrupos.com.br<mailto:delphi-br%40yahoogrupos.com.br>] On 
Behalf Of Ricardo Cabral
> Sent: segunda-feira, 5 de maio de 2008 13:34
> To: delphi-br@yahoogrupos.com.br<mailto:delphi-br%40yahoogrupos.com.br>
> Subject: Re: [delphi-br] Gravar imagens no Banco Interbase/Firebir
>
> Acho que seria mais interessante gravar somento o caminho da
imagem no BD e gravar a imagem numa pasta.
>
> rafaelpinto19 <[EMAIL PROTECTED]<mailto:rafaelpinto%40cdsol.com.br>>
escreveu:
>
> Olá galera,
>
> Alguém poderia me explicar como gravar imagens no Banco de
> dados pelo delphi, Estou usandon o componente Tcamera para Visualizar
> a imagem pela webcam e o componente TImage para Capturar. Agora salvar
> a imagem no Banco eu nnão sei ainda. Se tive rum rotina ou um código
> simples. Eu vou agradecer bastante. Obrigado pela atenção!!!
>
> Abraços,
>
> Ricardo Cabral
>
> ---------------------------------
> Abra sua conta no Yahoo! Mail, o único sem limite de espaço para
armazenamento!
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> Abraços,
>
> Ricardo Cabral
>
> ---------------------------------
> Abra sua conta no Yahoo! Mail, o único sem limite de espaço para
armazenamento!
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>
>
>
> --------------------------
> E-mail Seguro Vetorial.net
>
> Mensagem classificada como NÃO-SPAM. Para classificar como SPAM,
> encaminhe para [EMAIL PROTECTED]
>
> Chave de Identificação: 54568,481f3db9196851913172569
>
>
> [As partes desta mensagem que não continham texto foram removidas]
>



[As partes desta mensagem que não continham texto foram removidas]

Responder a