selectblob怎么取出来的是空啊?

cloudlv 2005-08-09 05:35:50
数据表中有一个类型为image的字段(photo),在数据库的查询分析器中可以查到它有值(不为null),但是在pb10.0中查出来的就是null,我的语句是selectblob photo into :lb_photo from table1 where id='1',其中lb_photo是blob类型的变量
奇怪的是,如果存入的这个photo只有几十K时,可以正常取出,现在它有1M多,就取不出来了,怎么办?
...全文
231 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
嘘嘘兔 2005-08-10
  • 打赏
  • 举报
回复
这样试试:
Blob lb_pic,lb_write
Long ll_length
Int li_c,li_i,li_fileNum,li_qs,li_len,li_mod
string ll_no
ll_no=get_no //编号
selectblob picture
into :lb_pic
from t_health
where no = :ll_no; //按编号查询得到blob

ll_length = Len(lb_pic)
IF ll_length<1 THEN RETURN

li_c = ll_length/32765
li_mod = Mod(ll_length,32765)
IF li_mod>0 THEN li_c++

ls_filename ='sss.jpg'//生成的图片文件
li_FileNum = FileOpen(ls_filename,StreamMode!,write!,lockWrite!,replace!)
FOR li_i=1 to li_c
li_qs = (li_i - 1) * 32765 + 1
IF li_i<li_c THEN
li_len = 32765
ELSE
li_len = li_mod
END IF
lb_write = blobmid(lb_pic,li_qs,li_len)
FileWrite(li_fileNum,lb_write)
NEXT
fileclose(li_filenum)

dw_1.modify("p_1.filename='sss.jpg'") //把图片文件赋值给数据窗口中的p_1
bomber2001 2005-08-09
  • 打赏
  • 举报
回复
把它拆分成几个文件,每个32k来读出来。。。。。。。。
cloudlv 2005-08-09
  • 打赏
  • 举报
回复
怎么没有人帮帮我啊,自己顶顶!

752

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧