DBMS_OUTPUT exceptions DBMS_OUTPUT does not contain any declared exceptions. Instead, Oracle designed the package to rely on two error numbers in the -20 NNN range (usually reserved for Oracle customers). You may, therefore, encounter one of these two exceptions when using the DBMS_OUTPUT package (no names are associated with these exceptions). The -20000 error number indicates that these package-specific exceptions were raised by a call to RAISE_APPLICATION_ERROR, which is in the DBMS_STANDARD package. -20000 ORU-10027: buffer overflow, limit of <buf_limit> bytes. If you receive the -10027 error, you should see if you can increase the size of your buffer with another call to DBMS_OUTPUT.ENABLE.
这是因为在过程中用到了DBMS_OUTPUT.PUT_LINE()函数而输出到系统BUFFER的内容超出了默认设置,在过程之前执行一下 set serveroutput on size 1000000 就应该没问题了
DBMS_OUTPUT does not contain any declared exceptions. Instead, Oracle designed the package to rely on two error numbers in the -20 NNN range (usually reserved for Oracle customers). You may, therefore, encounter one of these two exceptions when using the DBMS_OUTPUT package (no names are associated with these exceptions). The -20000 error number indicates that these package-specific exceptions were raised by a call to RAISE_APPLICATION_ERROR, which is in the DBMS_STANDARD package. -20000
ORU-10027: buffer overflow, limit of <buf_limit> bytes. If you receive the -10027 error, you should see if you can increase the size of your buffer with another call to DBMS_OUTPUT.ENABLE.
set serveroutput on size 1000000
就应该没问题了
假定为varchar2(6),如果Insert时保存为'hlb ',
更新时把它当成'hlb'来更新时也会报错,
解决的方法时:update tablename field=trim(field)
即可.以上两个问题我都遇到过.