如何将word、图形等存储到Oracle7.3数据库中,BlobField和7。3中什么类型是对应的,给点代码(70分)

  • 主题发起人 主题发起人 qq
  • 开始时间 开始时间
Q

qq

Unregistered / Unconfirmed
GUEST, unregistred user!
BlobField和7。3中什么类型是对应的,给点代码
 
不好意思,我用的SQL SERVER ,下面的代码是存入数据库的一种思路,我用了 ole

Var
OleStream : TMemoryStream;
begin
OleStream := TMemoryStream.Create; //save to Image字段
try
if Adoq_htgl.State<>dsedit then
Adoq_htgl.Edit ;
olestream.Clear ;
ole.SaveToStream(OleStream);
OleStream.Position := 0; //回零点
ADOQ_HTGL.edit;
(ADOQ_HTGL.FieldByName('url') as TBlobField).LoadFromStream(OleStream);
ADOQ_HTGL.Post ;
finally
openfile.Enabled :=true;
OleStream.Free;
end;
end;
 
不好意思,我的意思其实是ORACLE中建表是该字段应该用什么类型
我用ROW类型不行
 
row
long row
 
row ;long row 在DELPHI中是TVarBytesField类型
TBlobField()是报错
TO : tokey
var
MYStream: TMemoryStream; //取出数据库中的WORD 文件
begin
MYStream := TMemoryStream.Create;
MYStream.Clear;
(Table1.FieldByName('zsfa') as TBlobField).SaveToStream(MYStream);
if MYStream.size>0 then
begin
MYStream.Position := 0;
OleContainer1.LoadFromSTREAM(MyStream);
OleContainer1.DoVerb(1);
End;
运行到OleContainer1.LoadFromSTREAM(MyStream);
为何总提示1%以存在
 
tokey你是否使用的是纯粹的OLE,
另外你是否可以回答我下面的问题,如果可以我就结束问题
TStreamHeader中Signature和DrawAspect是干什么的,DrawAspect有那些取值,各有什么用
此问题我会单50分的帖子
 
在sql server中使用image字段类型可以。
oracle你在全文检索中查一查就知道了。
 
我怎么没有这样的问题,真怪了
再 if 前加
OleContainer1.clear 看怎样
还有你说的TStreamHeader中Signature和DrawAspect是干什么的,DrawAspect有那些取值
抱歉,我只知道Tfilestream,TStringStream ,TMemoryStream
TBlobStream TWinSocketStream ,TOleStream 这几种,没有遇到过Tstreamheader
不能回答你的问题。
 
tokey
我确认一下,你是否使用SAVETOSTREAM的方法把文件存到库里的
 
多人接受答案了。
 
后退
顶部