oracle中字符串可支持最大长度32767的问题

zhangcm00 2012-12-24 02:51:04
我知道oracle中字符串可支持最大长度32767的问题,这个没办法改变了,但是我这边有一个功能是循环产生动态列的,有什么办法判断字符串在超出这个长度之后返回给用户提示,如果用 if length()>32767方法,在已经超这个范围的时候就报错了,没法判断,请各位支招。。。
...全文
903 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
crazy_samba 2013-01-13
  • 打赏
  • 举报
回复
EXCEPTION
WHEN OTHERS THEN
   raise_application_error(-20001,'An error was encountered - '||SQLCODE||' -ERROR- '||SQLERRM);
END;
zhangcm00 2013-01-07
  • 打赏
  • 举报
回复
我现在异常的方式exception处理该问题 请问如何扑捉异常呢????
forgetsam 2012-12-25
  • 打赏
  • 举报
回复
1 异常处理 2 拼接无非是 a := b||c 或者 a := a||b 出错之前就把所有字符的长度求出来,相加,超出就退出循环了。
善若止水 2012-12-24
  • 打赏
  • 举报
回复
如果是用存储过程,可以看看例外
zhangcm00 2012-12-24
  • 打赏
  • 举报
回复
引用 4 楼 vs276542764 的回复:
if length()= 32766 then fnd_message.debug('超出来'); end if;
-------你好,我这里的字符不是一个一个的新增的
fw0124 2012-12-24
  • 打赏
  • 举报
回复
引用 2 楼 zhangcm00 的回复:
好像没有错误判断码 ,我是存储过程的,直接退出来了
在存储过程里面加上exception子句
怪叔叔_Wilson 2012-12-24
  • 打赏
  • 举报
回复
if length()= 32766 then fnd_message.debug('超出来'); end if;
izj 2012-12-24
  • 打赏
  • 举报
回复
那为什么要用字符串呢。。。。用大数据类型clob不行吗? 出库的时候在转成String。。
zhangcm00 2012-12-24
  • 打赏
  • 举报
回复
好像没有错误判断码 ,我是存储过程的,直接退出来了
izj 2012-12-24
  • 打赏
  • 举报
回复
不能获取oracle的错误判断码,跟据错误码来返回给用户提示。。

17,088

社区成员

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

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