raise_application_error(-20001,'这里的字非常非常的多')使用这个函数抛异常的时候,后面的文字太长了会被截断,oracle不会返回这么多字,会被截断,这是什么原因产生的,有没有解决办法? 我是在触发器里面写的,所以不是储存过程,不会有out参数之类的东西。
解决方案 »
- sql update+select 语句求解(求高手赐教)
- 安装Navicati for oracle软件的计算机是否必须安装oracle数据库软件?
- 如何得到存储过程执行的sql
- oracle 从无基础到马马虎虎可以任职dba的基本工作一般要多久?
- Oracle的一个问题,大虾、专家们留步啊
- 麻烦大家给介绍一下这个触发器?
- oracle查询问题
- 关于SQL*PLUS的错误
- Delphi中如何读写RAW类型的字段,ORacle7中Varchar2 最大允许的长度是多少?(今天揭帖)
- 在ORACLE中如何操作LONG RAW类型的字段,把它从一个表中取出插入到另一个表中
- 把soctt的密码给忘记了 怎么修改啊 各位高人?
- 在安装Oracle的时候,管理员什么的密码都没有设置,怎么办?
其中message最大长度是2048,你的异常信息会超过这个长度?
如果真是2048那也不会有问题,我刚刚截了一实际返回字符串的长度,我查了一下select lengthb('') from dual,只返回了 1012 的长度。
里面的错误代码和内容,都是自定义的。说明是自定义,当然就不是系统中已经命名存在的错误类别,是属于一种自定义事务错误类型,才调用此函数。error_number_in 之容许从 -20000 到 -20999 之间,这样就不会与 ORACLE 的任何错误代码发生冲突。error_msg_in 的长度不能超过 2k,否则截取 2k。lengthb你用的是这个?还是length?
肯定是lengthb,用length只有600多的长度.