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,之後還是修改了自己的語句,既然是輸出過多導致,我就將數據語句放在循環外面,這樣只要輸出語句小於緩存就可以了。
本文就介紹到這裡了,希望本次的介紹能夠對您有所收獲!