Inserir uma Imagem em Banco ACCESS no campo Objeto Ole
11/02/2003
0
O negocio é o seguinte...
Gostaria de inserir e recuperar uma imagem(.bmp,.jpg ou .jpeg) em uma tabela de base ACCESS/BDE/ADO via instruçao insert into... ate o momento so consegui implementar tal codigo com bases Paradox,Interbase(sem ADO..) e Oracle ...Para a base ACCESS/BDE so consegui fazer tal incerssao desta forma....
Procedure TForm1.Grava_Imagem_JPEG(Tabela:TQuery; Campo:TBlobField;
Foto:TImage; Dialog:TOpenPictureDialog);
var BS:TBlobStream;
MinhaImagem:TJPEGImage;
Begin
if Dialog.FileName <> ´´ Then
Begin
if not (Query1.State in [dsEdit, dsInsert]) Then
Query1.Append;
Query1.FieldByName(´Nome´).AsString:= MaskEdit1.Text;
Query1.FieldByName(´Tipo´).AsString:= Copy(ExtractFileExt(ExtractFileName(OpenPictureDialog1.FileName)),2,3);
BS := TBlobStream.Create((Campo as TBlobField), BMWRITE);
MinhaImagem := TJPEGImage.Create;
MinhaImagem.LoadFromFile(Dialog.FileName);
MinhaImagem.SaveToStream(BS);
Foto.Picture.Assign(MinhaImagem);
BS.Free;
MinhaImagem.Free;
Query1.Post;
End;
End;
Onde o Campo do ACCESS e do tipo OBJETO OLE....
Ou seja usando Edit/Post o que nao é interesante no momento ...
Caso algum dos senhores possa me ajudar...:)
Ficarei em debito... :)))
Abraços
RicRio
Gostaria de inserir e recuperar uma imagem(.bmp,.jpg ou .jpeg) em uma tabela de base ACCESS/BDE/ADO via instruçao insert into... ate o momento so consegui implementar tal codigo com bases Paradox,Interbase(sem ADO..) e Oracle ...Para a base ACCESS/BDE so consegui fazer tal incerssao desta forma....
Procedure TForm1.Grava_Imagem_JPEG(Tabela:TQuery; Campo:TBlobField;
Foto:TImage; Dialog:TOpenPictureDialog);
var BS:TBlobStream;
MinhaImagem:TJPEGImage;
Begin
if Dialog.FileName <> ´´ Then
Begin
if not (Query1.State in [dsEdit, dsInsert]) Then
Query1.Append;
Query1.FieldByName(´Nome´).AsString:= MaskEdit1.Text;
Query1.FieldByName(´Tipo´).AsString:= Copy(ExtractFileExt(ExtractFileName(OpenPictureDialog1.FileName)),2,3);
BS := TBlobStream.Create((Campo as TBlobField), BMWRITE);
MinhaImagem := TJPEGImage.Create;
MinhaImagem.LoadFromFile(Dialog.FileName);
MinhaImagem.SaveToStream(BS);
Foto.Picture.Assign(MinhaImagem);
BS.Free;
MinhaImagem.Free;
Query1.Post;
End;
End;
Onde o Campo do ACCESS e do tipo OBJETO OLE....
Ou seja usando Edit/Post o que nao é interesante no momento ...
Caso algum dos senhores possa me ajudar...:)
Ficarei em debito... :)))
Abraços
RicRio
Anonymous
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)