日期:2014-05-16 浏览次数:20501 次
???????? 在调试oracle语句的时候,尤其是存储过程中,为了方便调试经常需要用到dbms_output.put_line()来打印输出,但是使用这个输出却有限制,Dbms_Output.Put_Line字符超过255,如果报错:buffer overflow
?
???????? 解决方案写一个存储过程,分段打印,不过当然要调大buffer size,超过允许的范围也会报错
?
?
?
create or replace procedure put_line_unlimit(p_string in varchar2) is l_string long default p_string; begin loop exit when l_string is null; dbms_output.put_line(substr(l_string,1,200)); l_string := substr(l_string,201); end loop; end;
?
??? 这样就可以通过调用存储过程来输入打印内容