从数据库里读取的内容怎么才能显示在olecontainer
我的数据库结构是
字段是
id char
word image
表明是word
数据库里存放的是word文档,我是以流的方式存放的,那么我读取的时候,想把内容放到olecontainer上,这样方便修改,
但是我的代码总是不能实现我的要求
请各位大侠指教
我的代码是var
//ST:TStringStream;
st:TMemoryStream;
// blobStream:TBlobStream;
blobStream: Tadoblobstream ;
i:integer;
begin
// st:=TStringStream.Create('');
st:=tmemorystream.Create;
// edit2.Text:=query.FieldValues['path'];
// blobstream:=TBlobStream.Create(TBLOBfield(query.FieldByName('word')),bmread);
blobstream:=Tadoblobstream.Create(TBLOBfield(query.FieldByName('word')),bmread);
blobstream.Position:=0;
st.CopyFrom(blobstream,blobstream.Size);
st.Position:=0;
olecontainer1.DestroyObject;
olecontainer1.LoadFromStream(blobstream);
query.Close;
st.Free;
blobstream.Free;
end;
我用的是ado
我的数据库结构是
字段是
id char
word image
表明是word
数据库里存放的是word文档,我是以流的方式存放的,那么我读取的时候,想把内容放到olecontainer上,这样方便修改,
但是我的代码总是不能实现我的要求
请各位大侠指教
我的代码是var
//ST:TStringStream;
st:TMemoryStream;
// blobStream:TBlobStream;
blobStream: Tadoblobstream ;
i:integer;
begin
// st:=TStringStream.Create('');
st:=tmemorystream.Create;
// edit2.Text:=query.FieldValues['path'];
// blobstream:=TBlobStream.Create(TBLOBfield(query.FieldByName('word')),bmread);
blobstream:=Tadoblobstream.Create(TBLOBfield(query.FieldByName('word')),bmread);
blobstream.Position:=0;
st.CopyFrom(blobstream,blobstream.Size);
st.Position:=0;
olecontainer1.DestroyObject;
olecontainer1.LoadFromStream(blobstream);
query.Close;
st.Free;
blobstream.Free;
end;
我用的是ado
谢谢
再次感谢
QQ 11231221