ORA-20000: ORU-10027: buffer overflow, limit of 2000 bytes:
解决方法:
sqlplus登录环境没有设置buffer的大小,默认情况下是20000,将打印打开也同时赋予20000的buffer,如果输出超过这个值,则会报以上错误!
设置更大的buffer值,可以使用 exec dbms_output.enable(200000)来设置该buffer值。
设置更大的buffer值,可以使用 exec dbms_output.enable(200000)来设置该buffer值。
设置成更大的也会出现buffer overflow.同时要oracle无限制好像没什么方法,所以输出这么多内容的话,建议作个日志表,因为缓冲总会满的
说明:该方法要先执行了"Set serveroutput on;"这个命令之后执行才起作用即:
Set serveroutput on;
exec dbms_output.enable(200000);
declare
---define Cursor
Cursor cur is
select * from action a order by a.id desc;
curInfo cur%rowtype;---定义游标变量
Begin
---中间内容省略
end
另外如果在pl/sql中执行"set serveroutput on"的命令应该在Comman window中执行,否则有可能报错!