龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 数据库类 > Oracle 技术 >

一个Oracle数据库执行存储过程的错误解决

时间:2011-04-12 23:18来源:未知 作者:admin 点击:
分享到:
Oracle 数据库执行 存储过程 的错误解出现了错误,错误信息如下: ORA-20000:ORU-10027:bufferoverflow,limitof10000bytes ORA-06512:atSYS.DBMS_OUTPUT,line32 ORA-06512:atSYS.DBMS_OUTPUT,line97 ORA-06512:atSYS.DBMS_OUTPUT,l

Oracle数据库执行存储过程的错误解出现了错误,错误信息如下:

ORA-20000: ORU-10027: buffer overflow, limit of 10000 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 line 18  

经过一系列的分析以及查看网上的资料终于知道了问题的解决方法,出现的原因是因为我在存储过程中使用了dbms_output.put_line(); 由于过程中有循环,因此输出量比较大,致使缓存不够报错。

网上的解决方法是set   serveroutput   on   size   100000 (相当于把缓存设置大一点),但是我执行时候报错 ORA-00922: missing or invalid option,之后还是修改了自己的语句,既然是输出过多导致,我就将数据语句放在循环外面,这样只要输出语句小于缓存就可以了。

本文就介绍到这里了,希望本次的介绍能够对您有所收获!

精彩图集

赞助商链接