mysql数据库 如何读取文件数据(100分)

  • 主题发起人 主题发起人 mlc67
  • 开始时间 开始时间
M

mlc67

Unregistered / Unconfirmed
GUEST, unregistred user!
我在mysql 中定义了一个表 create table tb_1(name varchar(4),value longblob)
我用一般的写法保存数据没有问题。
但读出回来会报错 提示"invalid class typecast" 好像是这样的.
我用的是odbc连接的.
 
没有人会吗?各位大大,有用过的,能不能说说啊
 
分不够我可以再加的.
 
为什么没人回答我的问题呢?大大们阿,我都要崩溃了阿.救救俺吧
 
你读的代码呢?不看怎么知道错误在那里
 
//就是传统的那种
写的时候是这样的
Mstream:=TMemorystream.Create;
try
Mstream.LoadFromFile(File_path+file_name);
sqlstr := 'select * from rpt_tab where rptname='''+lfilename+'''';
if ExecuteSql(ADOQuery,sqlstr,0)<>0 then exit;
ADOQuery.Edit;
Mstream.Position:=0;
(ADOQuery.fieldbyname('RptFile') as Tblobfield).LoadFromStream(Mstream);
ADOQuery.Post;
finally
Mstream.Free;
end;
读的时候是这样的:
Mstream:=Tmemorystream.Create;
try
sqlstr := 'select * from rpt_tab';
if ExecuteSql(ADOQuery,sqlstr,0)<>0 then exit;
if ADOQuery.IsEmpty then exit;
for i := 0 to ADOQuery.RecordCount - 1 do
begin
Mstream.Clear;
TBlobField(ADOQuery.FieldByName('RptFile')).savetoStream(Mstream);
if Mstream.Size>0 then
begin
Mstream.position:=0;
Mstream.SaveToFile(File_path +ADOQuery.FieldByName ('RptName').AsString+'.rpt');
end;
ADOQuery.Next;
end;
finally
Mstream.Free;
end;
 
我已经用读buf的形式改成功了,不过就是读出来的比原来的数据大.
 
各位大大们啊,我这不光是文件啊 还有图像数据 在显示的时候也报错.没人能解决吗?
拜托了啊,大虾们。
 
why? 没人回答吗?大家都没遇到过吗?遇到了都怎么解决的啊?说说啊,
只要有人回答,我都给分。
 
没遇到这种问题.
 
[:D]楼上的,准备接分吧.
 
同志们,大虾、小虾们,都来灌水吧,来者都有分。其实这两个问题我都解决有一段日子了.
 
晕。。还有这样说的。
 
大大们,还有人回答吗,凡是回答的,我都给分,我要结贴了,想要分的抓紧啊。
欢迎大家来此帖捧场,洒家我谢谢各位了。呵呵。
 
给分吧,我不懂:(
 
楼上的精神可嘉,至此中秋节已过之际,我谨代表mlc67向灌水的同志问好。
这周把这个贴结了应该没有问题.
 
哈哈,走过,路过,有分接,我不会错过。来啦。。。
 
要把读出来的图片显示在IMAGE上吗?
 
MySql数据库,听说速度很快!干脆你把已有使用心得贴出来好了!
 
来过啦!
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部