读书人

怎么把word保存到SQL2005数据库中

发布时间: 2012-10-13 11:38:17 作者: rapoo

如何把word保存到SQL2005数据库中?
如题。

[解决办法]
procedure TForm1.button2Click(Sender: TObject);
begin
if OpenDialog1.Execute then
begin
if not adoquery1.Active then adoquery1.Open;
adoquery1.Append;
s:=ExtractFileName(OpenDialog1.FileName);
(adoquery1.FieldByName('word') as TBlobField).LoadFromFile(OpenDialog1.FileName);
//等同于上一句
//TBlobField(adoquery1.FieldByName('word')).LoadFromFile(OpenDialog1.FileName);
adoquery1.Post;
ShowMessage('插入Word文件成功!');
end;
end;
[解决办法]
建一个doc字段,类型varbinary(MAX)

保存:
ADOQuery1.Append;
TBlobField(ADOQuery1.FieldByName('doc')).LoadFromFile('D:\1.doc');
ADOQuery1.Post;

取值:
TBlobField(ADOQuery1.FieldByName('doc')).SaveToFile('D:\2.doc');

或者用流操作:
LoadFromStream/SaveToStream


[解决办法]
将WORD文件以内存流方式读取后,
再以内存流方式保存到数据库中(表名:WORDA,类型为:IMAGE)
我就是这样实现的

反之,要读取这些信息时,从数据库表内读取这些内存流保存到一个WORD文件
中,再用WORD打开即可

读书人网 >.NET

热点推荐