WORD文件写入MS SQL数据库,用loadfromfile全是乱码,怎么办?

llhh 青岛大学 2005-03-18 12:00:31
WORD文件写入MS SQL数据库,用loadfromfile全是乱码,怎么办?数据库字段是image.
...全文
105 点赞 收藏 7
写回复
7 条回复
cyf_delphi 2005年03月19日
我这里什么问题。
而且一直这么使用。你把你的原码帖出来,大家一起看看
回复 点赞
chscheese 2005年03月18日
使用 binary
回复 点赞
liuyan55 2005年03月18日
STUDY....
回复 点赞
llhh 2005年03月18日
: cyf_delphi(风一样) 你好:
我用你的办法写入,没法存盘,提示:“多步操作产生错误,请检查每一步的状态值。”请帮忙。
回复 点赞
Cute_Rascal 2005年03月18日
使用 binary

支持!
回复 点赞
cyf_delphi 2005年03月18日
存入时用
var
MS: TMemoryStream;
begin
MS := TMemoryStream.Create;
OleContainer1.SaveToStream(MS);
adoquery1.Edit;
TBlobField(adoquery1.FieldByName('word')).LoadFromStream(MS);
adoquery1.Post;

打开时用:
TBlobField(adoquery1.FieldByName('word')).SaveToFile(ExtractFilePath(application.ExeName)+'temp.doc');
OleContainer1.LoadFromFile(ExtractFilePath(application.ExeName)+'temp.doc');
OleContainer1.DoVerb(1);
OleContainer1.Run;
这样做,虽有点麻烦,但到现在也没有出现什么错误。(我是这样做的,希望能帮你)
回复 点赞
cdsgajxlp 2005年03月18日
用流读写
//测试通过
procedure TForm1.Button1Click(Sender: TObject);
var
MfileStream : Tfilestream;
MStringStream : TStringStream;
XQXXB : Tadoquery;
begin
If OpenPictureDialog1.Execute Then
begin
try
XQXXB:=Tadoquery.Create(self);
XQXXB.Connection:=ADOConnection1;
MfileStream.Create(OpenPictureDialog1.FileName,fmOpenRead);
MStringStream:=TStringStream.Create('');
MStringStream.CopyFrom(MfileStream,MfileStream.Size);
XQXXB.SQL.Add('Insert into XQXXB ( 照片 ) values (:zhaopian)');
XQXXB.Parameters.ParamByName('zhaopian').LoadFromStream(MStringStream,ftBlob);
XQXXB.ExecSQL;
finally
freeandnil(MfileStream);
freeandnil(XQXXB);
freeandnil(MStringStream);
end;
end;


end;
回复 点赞
发动态
发帖子
数据库相关
创建于2007-08-02

1209

社区成员

8.8w+

社区内容

Delphi 数据库相关
社区公告
暂无公告