本文于 2 天前发布,最后更新于 2 天前
一、问题描述
一次客户在执行存储过程打印输出时发现,管理工具消息区域并没有像预期一样的输出内容,而是仅有执行SQL的反馈,如图
这是为什么呢?
二、问题复现
我们使用一段示例存储过程,打印输出进行测试
BEGIN
DBMS_OUTPUT.ENABLE(100000);
FOR I IN 1..10000
LOOP
DBMS_OUTPUT.PUT_LINE(I);
--PRINT I;
END LOOP;
END;
发现现象的确如客户碰到的一样,没有任何的输出。
三、问题解决
解决方法:从消息区域右键——选项——修改显示的最大字符数——应用——确定后便可解决,如图
再次执行打印的存储过程,效果如下:
这次成功的显示了打印的内容。
四、其他问题
我们有时在打印时还会碰到报错:缓冲区不足
可以通过上述存储过程中的DBMS_OUTPUT.ENABLE(100000);
解决