使用ADO保存图片。 谢谢
如何用啊ADO来保存JPG格式的图片,然后用ADO在从数据库中把JPG格式图片读出来。 问题点数:50、回复次数:5Top
1 楼zfmich()回复于 2002-11-14 11:56:48 得分 5
用TBOLBFIELDTop
2 楼d983074(d983074)回复于 2002-11-14 12:36:57 得分 5
TBOLBFIELD(adodataset.fieldbyname['pic']).loadfrom(picstream)
TBOLBFIELD(adodataset.fieldbyname['pic']).saveto(picstream)
Top
3 楼lyhold(让你飞)回复于 2002-11-14 13:22:16 得分 15
Tblobfield(adoquery1.FieldByName('zp')).Assign(image1.Picture );
adoquery1.Post ;
Top
4 楼lyhold(让你飞)回复于 2002-11-14 13:23:28 得分 0
读取!!!!!
Image1.Picture.Bitmap.Assign(TBLOBField(adoquery1.Fields[0]));Top
5 楼findya(满地找牙)回复于 2002-11-14 13:36:48 得分 25
procedure TForm1.Button1Click(Sender: TObject);
var
JPGImg: TJPEGImage;
ADOData: TADOBlobStream;
begin
ADOQuery1.Open;
ADOQuery1.Edit;
//ADOQuery1.FieldValues['ID'] := '2';
JPGImg := TJPEGImage.Create;
ADOData := TADOBlobStream.Create(TBlobField(ADOQuery1.FieldByName('PicID')), bmWrite);
try
JPGImg.Assign(Image1.Picture.Bitmap);
JpgImg.SaveToStream(ADOData);
finally
JPgImg.Free;
ADOData.Free;
end;
ADOQuery1.Post;
end;
procedure TForm1.Button2Click(Sender: TObject);
var
BS : TStream;
aStream: TADOBlobStream;
pic : TJPEGImage;
begin
ADOQuery2.Open;
ADOQuery2.First;
BS := ADOQuery1.CreateBlobStream(ADOQuery2.FieldByName('PicID'), bmRead);
if not ADOQuery2.FieldByName('PicID').IsNull then
begin
aStream := TADOBlobStream.Create(TBlobField(ADOQuery2.FieldByName('PicID')), bmRead);
pic := TJPEGImage.Create;
try
pic.LoadFromStream(aStream);
Image2.Picture.Assign(pic);
finally
pic.Free;
end;
end
else
begin
ShowMessage('fdsa');
Image2.Picture.Assign(nil);
end;
end;Top




