一尘不染

如何增加dbms_output缓冲区?

sql

我试图通过调试我的动态查询,dbms_output但似乎查询字符串对于dbms_output缓冲区来说太长了。

我有 :

ORA-06502: PL/SQL: numeric or value error: character string buffer too small
ORA-06512: at "SYS.DBMS_OUTPUT", line 148
ORA-06512: at line 1

知道如何增加缓冲区大小吗?


阅读 241

收藏
2021-03-17

共1个答案

一尘不染

您可以启用DBMS_OUTPUT并设置缓冲区大小。缓冲区大小可以在1到1,000,000之间。

dbms_output.enable(buffer_size IN INTEGER DEFAULT 20000);
exec dbms_output.enable(1000000);

检查 一下

编辑

根据Frank和Mat发表的评论,您还可以使用Null启用它

exec dbms_output.enable(NULL);

buffer_size
:缓冲信息的上限(以字节为单位)。将buffer_size设置为NULL可以指定没有限制。当用户指定buffer_size(NOTNULL)时,最大大小为1,000,000,最小为2,000。

2021-03-17