6

我试图dbms_output在存储过程中将大小设置为无限制。

但它给了我编译错误。所以我在 SQL*Plus 提示中尝试了以下方式。但我仍然收到缓冲区溢出错误。我该如何克服呢?

 set serveroutput on size unlimited;
 exec service_update;


ORA-20000: ORU-10027: buffer overflow, limit of 30000 bytes
ORA-06512: at "SYS.DBMS_OUTPUT", line 32
ORA-06512: at "SYS.DBMS_OUTPUT", line 97
ORA-06512: at "SYS.DBMS_OUTPUT", line 112
ORA-06512: at "ARBOR.SERVICE_UPDATE", line 27
ORA-06512: at line 1
4

2 回答 2

13

在过程 service_update 中,有机会调用

dbms_output.enable(30000); 

这可能会覆盖您设置的第一个限制。

于 2011-11-08T04:47:55.747 回答
7

在 Oracle 10gR2 中,您还可以使用无限缓冲区 ( https://forums.oracle.com/forums/thread.jspa?threadID=361639 ):

dbms_output.enable(null);
于 2014-04-03T09:55:21.417 回答