SQL数据库中BLOB内容导出到word文档 ( 积分: 100 )

  • 主题发起人 主题发起人 zfc326
  • 开始时间 开始时间
Z

zfc326

Unregistered / Unconfirmed
GUEST, unregistred user!
sql数据库中一字段名word,类型为Image,存放的是word文档,要将符合条件的记录中的word字段导出到一篇word文档
 
sql数据库中一字段名word,类型为Image,存放的是word文档,要将符合条件的记录中的word字段导出到一篇word文档
 
TBlobField(ADODataSet1.FieldByName('word')).SaveToFile('c:/test.doc');
 
完整的代码在下面:
----------------------------------
procedure TForm1.Button1Click(Sender: TObject);
var
myFile : TFileStream;
begin
myFile := TFileStream.Create('c:/abcd.doc',fmOpenRead);
myFile.Position := 0;
ADOTable1.Edit ;
TBlobField(ADOTable1.FieldByName('aaabcd')).loadFromStream(myFile);
myFile.Free;
end;

procedure TForm1.Button2Click(Sender: TObject);
var
myFile : TFileStream;
begin
myFile := TFileStream.Create('c:/abcd1.doc',fmCreate);
TBlobField(ADOTable1.FieldByName('aaabcd')).SaveToStream(myFile);
myFile.Free;
end;
----------------------------------------
但此代码在编译时运行中出现可恶的提示:
Project Project1.exe raised exception class EVariantError with message 'Invalid variant type conversion'.Process stopped.UseStep or Run to continue.
不过在单独运行中,无此提示出现。
快被它烦死。
 
谢谢,但这只能导出一条记录,如何将多条记录的BLOB内容导出到一个word文档
 
楼主老大:
你是不是在做公文传递或合同类的管理?做WORD的公文图章什么的?

我是想这样做,将多个BLOB内容分别导出到多个临时WORD文档,然后再合并为一个。

我觉得很麻烦的。目前还没有一个完美的解决方案。
 
后退
顶部