我的表中只有一个名为image1的image字段
var
picture1:TPicture;
begin
picture1:=TPicture.Create ;
ADOTable1.Edit;
Picture1.LoadFromFile('.\image\770ft.bmp');
DBImage1.Picture:=Picture1; //问题1、我将上面的BMP文件改成ICO文件,DBImage2中就没有显示了,是不是它不支持ico
ADOTable1.FieldByName('image1').Assign(Picture1);
ADOTable1.post;
image1.Picture :=ADOTable1.FieldByName('image1').value; // 问题2、我想从数据库中取出image数据,但是用这条语句不行,说是
//‘TPicture'和'Variant’类型不匹配,我要怎样才能达到目的呢
end;
var
picture1:TPicture;
begin
picture1:=TPicture.Create ;
ADOTable1.Edit;
Picture1.LoadFromFile('.\image\770ft.bmp');
DBImage1.Picture:=Picture1; //问题1、我将上面的BMP文件改成ICO文件,DBImage2中就没有显示了,是不是它不支持ico
ADOTable1.FieldByName('image1').Assign(Picture1);
ADOTable1.post;
image1.Picture :=ADOTable1.FieldByName('image1').value; // 问题2、我想从数据库中取出image数据,但是用这条语句不行,说是
//‘TPicture'和'Variant’类型不匹配,我要怎样才能达到目的呢
end;
用流来读取
var
FileSource : Tstream;
adoquery1.Open;
FileSource:=CreateBlobStream(FieldbyName('xx'),bmRead);
image1.Picture.Bitmap.LoadFromStream(filesource);
filesource.Free;
adotable.(FieldByName('image1') AS TBlobField).SaveToFile(ExtractFilePath(Application.ExeName)+'Temp.bmp');
Image1.Picture.LoadFromFile(ExtractFilePath(Application.ExeName)+'Temp.bmp');