• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
工作日志
工作日志
博客园    首页    新随笔    联系   管理    订阅  订阅
delphi 从数据讀库取图片
procedure TForm1.Button1Click(Sender: TObject);               //插入圖片過程
var
  testStream:TMemoryStream;
begin
  
try
    testStream :
= TMemoryStream.Create;                                 //創建內存流
    Image1.Picture.Graphic.SaveToStream(testStream);  //將圖片保存至內存流中
    adoquery1.Close;
    adoquery1.SQL.Clear;
    adoQuery1.SQL.Add(
'Insert into test (id,photo) values (:id,:photo)'); //進行插入操作
    adoquery1.Parameters.ParamByName('id').Value := '003';
    adoQuery1.Parameters.ParamByName(
'photo').LoadFromStream(testStream,ftBlob);  //讀取保存的內存圖
    adoquery1.ExecSQL;
  
finally
    testStream.Free;                                                                     
//釋放內存流
  end;
end;

procedure TForm1.Button2Click(Sender: TObject);               
//取圖片過程
var
  mStream:TMemoryStream;
  JpgFile:TjpegImage;
begin
  
if not ADOQuery1.FieldByName('photo').IsNull then begin ;
    mStream:
=TMemoryStream.Create ;
    JpgFile:
=TjpegImage.Create ;
    TBlobField(ADOQuery1.FieldByName(
'photo')).SaveToStream(mStream);  //顯示的轉換為BlobFiled並保存至內存流
    mStream.Position :=0;
    jpgfile.LoadFromStream(MStream);
    image2.Picture.Assign(JpgFile);
 end
 
else begin
   image2.Picture :
=nil;
 end;
end;
posted on 2009-03-05 10:09  滴水藏海映太阳  阅读(308)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3