如何得到long raw字段,所包含内容的字节数

Sun_Libra 2003-04-05 08:29:23
rt
...全文
63 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
beckhambobo 2003-04-07
  • 打赏
  • 举报
回复
那转用blob或clob吧,其次,用dbms_lob包来读写。
要注意大对象用法
428117 2003-04-06
  • 打赏
  • 举报
回复
大侠好:
我现在用的是long raw 型字段。写进去没问题,读出来时就出错。试了下一下只能读出4096字节字段,
怎么循环都没有用,假如不用循环,直接想一次全部读出也只能设置最大值到4096。
会不是oracle 配置有关。请帮忙,很急的。
下面是我写入代码。
i=0
chunksize=10240
totalstr=request.form("text")
totalsize=len(totalstr)
num=totalsize\chunksize
remsize=totalsize mod chunksize
for i=0 to num
if i=num then
chunksize=remsize
end if
textstr=mid(totalstr,i*10240+1,chunksize)
oradynaset.fields("text").value=textstr
oradynaset.fields("text").dbappendchunk(textstr)
next

下面是我读取的代码。

if oradynaset.recordcount>0 then
chunksize=1024‘你说这里能设到64280,我只能设到4096,再大就读不出了
i=0
do
curchunk=oradynaset.fields("text").dbgetchunk(i*chunksize,chunksize),这里改最大值也没用。
cursize=len(curchunk)
str=str+curchunk
i=i+1
loop until cursize<chunksize
end if
,另外,我再试了用clob型,用oo4o对象调用存储过程,可以用这个办法吗?有资料给我发些吧。
jiezhi 2003-04-05
  • 打赏
  • 举报
回复
see:oracle pl/sql supply package reference
utl_raw
wenzhulz 2003-04-05
  • 打赏
  • 举报
回复
use this function: UTL_RAW.LENGTH

下面是示例函数:
CREATE OR REPLACE FUNCTION rtn_bytes
RETURN NUMBER AS
v_raw mytab.mycol%type;
BEGIN
select mycol into v_raw from mytab;
return UTL_RAW.LENGTH(v_raw);
END;
/

17,086

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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