请问各位高手:
我在ACCESS中把表导出到文本文件,但表中存在图像字段,图像字段值不能导出,请问各位高手数据库中图像怎么导才能导出?能导到什么样的文件中?(导出的文件类型不能为图像文件,其他都可以)
非常谢谢!

解决方案 »

  1.   

    >>数据库中图像怎么导才能导出?这要看你的目的,你想导出做什么?? 为什么是文本???可能导出成 xml 就可
      

  2.   


     保存    procedure TFrm_BYZFirst.btn_SaveImgClick(Sender: TObject);
    var
       strm : TMemoryStream;
       ext : string;
    begin
       if image1.Picture.Graphic  <> nil then
       begin
          ext := ExtractFileExt(dlgPic.FileName);
          strm := TMemoryStream.Create;
          try
             image1.Picture.Graphic.SaveToStream(strm);
             dm.qryXS.Edit;
             TBlobField(dm.qryXS.FieldByName('testImg')).LoadFromStream(strm);
             dm.qryXS.Post;
          finally
             strm.Free;
          end;
       end;// 必须有图像
    end;
      

  3.   

    aiirii(ari-淘金坑) ,您好!首先谢谢您的回答,把图像从数据库导出成文件(非数据库、非图象文件),主要目的还是升级用,如果不导出,升级程序中总是带着数据库,不是很好。希望aiirii及其他高手指点,有什么可行的方法?非常感谢!
      

  4.   

    方法三:
     将图片文件以二进制方式存储在数据库中,使用时调用。详细情况请参考:使用 ADO 的 STREAM 对象的 LoadFromFile 方法以及 SaveToFile 方法实现:
    http://access911.net/index.asp?board=4&mode=3&recordid=74FAB51E13DC使用 ADO 的 RECORDSET.FIELD 对象的 GetChunk 以及 AppendChunk 方法实现:
    http://access911.net/index.asp?board=4&mode=3&recordid=75FAB01EASP 中使用的方法:
    http://access911.net/index.asp?board=4&mode=3&recordid=79FAB31E下列例程就是采用这种方法,在显示的时候把长二进制数据保存为临时文件用于显示
    http://access911.net/down/photo.rar(size=308K)
     
      

  5.   

    blog.csdn.net/ghyghost里面有存取数据库的文章
      

  6.   

    呵!楼上进步得真快!从关心CSDN的结贴率到关心结婚率了....弱弱地问楼上一句:你嫁出去了没?^-^
      

  7.   

    程序中用adodb.recordset对象打开表, 使用该对象的saveas方法存储为xml文档即可.
      

  8.   

    是不是可以用blob字段的东西. 
    我也想知道这个问题.
    另外怎么在xml中保存图像啊?
      

  9.   

    图像可以导成文本格式,将那个二进制数据转换为字符串表示,看看DELPHI的FORM文件,如果你有一个PICTURE图片,看看他的文本存储,可以考虑这个方法。BinToHex过程或许可以实现这个,读取自己写成的文本时再转换回来。
      

  10.   

    支持程序中用adodb.recordset对象打开表, 使用该对象的saveas方法存储为xml文档即可.