delphi数据库存储图片
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了delphi数据库存储图片相关的知识,希望对你有一定的参考价值。
--存
str_sql := ‘update photo set photo = :photo ‘;
str_sql := str_sql + ‘ where sex = ‘‘女‘‘‘;
with qry_for_show do
begin
Close;
SQL.Clear;
SQL.Add(str_sql);
Parameters.ParamByName(‘photo‘).Assign(img2.Picture.Graphic);
ExecSQL;
end;
--读
procedure Tfrmpicsave.BitBtn1Click(Sender: TObject);
var
Stream:TMemoryStream;
Jpg:TdxPNGImage;
begin
qry_for_show.Close;
qry_for_show.SQL.Text:=‘SELECT * FROM HLDJPHOTO‘; // 查询图片
qry_for_show.Open;
if not qry_for_show.FieldByName(‘photo‘).IsNull then
begin
Stream:=TMemoryStream.Create ;
Jpg:=TdxPNGImage.Create ;
TBlobField(qry_for_show.FieldByName(‘photo‘)).SaveToStream(Stream); // 显示的转换为BlobField并保存到内存流
TBlobField(qry_for_show.FieldByName(‘photo‘)).SaveToFile(ExtractFilePath(Application.ExeName) + ‘www‘); // 显示的转换为BlobField并保存到内存流
Stream.Position :=0;
jpg.LoadFromStream(Stream); // 加载图片
image1.Picture.Assign(Jpg);
end
else
begin
image1.Picture :=nil;
end;
Stream.Free;
Jpg.Free;
end;
本文出自 “一切有为法,如梦幻泡影” 博客,请务必保留此出处http://kaixinbuliao.blog.51cto.com/2567365/1793348
以上是关于delphi数据库存储图片的主要内容,如果未能解决你的问题,请参考以下文章
(DELPHI)已经存入SQLSERVER中的图片数据(image字段)太大,怎么直接在数据库中压缩?或怎么用程序实现
delphi怎样在ADO里用ADOproc调用数据库sql server存储过程?,用ADODATASET或者ADOQUERY又怎样调用存储过程?