这是因为在过程中用到了dbms_output.put_line()在服务器端输出信息,而serveroutput   的size默认定义为10000bytes。

修改一下size应该就可以了

set serveroutput on 30000

ORA-20000 string

Cause:The stored procedure RAISE_APPLICATION_ERROR was called which causes this error to be generated.

Action:Correct the problem as described in the error message or contact the application administrator or database administrator for more information.

===============================================

写存储过程时遇到一个问题,执行dbms_output.putline(变量名)的时候,报错
ORA-20000:ORU-10027:buffer overflow,limit of 2000 bytes.

$ oerr ora 20000
20000, 00000, "%s"
// *Cause:  The stored procedure 'raise_application_error'
//          was called which causes this error to be generated.
// *Action: Correct the problem as described in the error message or contact
//          the application administrator or DBA for more information.

应该是变量大小超过了dbms_output.putline的最大值。

解决办法:
SQL>set   serveroutput   on   size   1000000

##2014-07-18添加
解决办法2:
在begin后面加上DBMS_OUTPUT.ENABLE(buffer_size => null) ,表示输出buffer不受限制。

如下面的语句是为了获取创建索引语句
set serveroutput on
declare
  v_sql    varchar2(1000);
  v_result varchar2(2000);
begin
  for cur_sql in (select 'select dbms_metadata.get_ddl(''INDEX'',''' ||
                         T.INDEX_NAME || ''',''XXXX'') FROM DUAL' as f_sql
                    from v$object_usage t
                   where t.monitoring = 'YES'
                     AND T.USED = 'NO') loop
    begin
      DBMS_OUTPUT.ENABLE(buffer_size => null); --表示输出buffer不受限制
      execute immediate cur_sql.f_sql
        into v_result;
      --DBMS_OUTPUT.PUT_LINE(cur_sql.f_sql);
      DBMS_OUTPUT.PUT_LINE(v_result);
    end;
  end loop;
end;
/

 

ORA-20000:ORU-10027:buffer overflow,limit of 2000 bytes.的更多相关文章

  1. ORA-20000 ORU-10027 buffer overflow limit of 2000 bytes

    这是在pl/sql中执行存储过程报的错,原因是serveroutput限制存储, 解决方案:set serveroutput on size 10000000;

  2. ORA-20000: ORU-10027: buffer overflow, limit of 10000 bytes

        要用dbms_output.put_line来输出语句,遇到以下错误: ERROR 位于第 1 行: ORA-20000: ORU-10027: buffer overflow, limit ...

  3. ORA-20000:ORU-10027:buffer overflow,limit of 10000 bytes错误4

    今天再测试一个存储过程时,用DBMS_OUTPUT.PUT_LINE输出时,报 ORA-20000:ORU-10027:buffer overflow,limit of 10000 bytes SQL ...

  4. 出错:ORA-20000: ORU-10028: line length overflow, limit of 255 bytes per line?

    起因:DBMS_OUTPUT.put(V_SQL) 提示太长错误,设置了buffer=>null 和set 长度都不行 解决方法如下: testxx.debug_print(V_SQL); -- ...

  5. 调试存储过程时提示ORA-20000: ORU-10027: buffer overflow

    下午的时候在 PL/SQl Developer 10.0.5.1710 上调试壹個存储过程,在调试的时候使用了比较多的 DBMS_OUTPUT.PUT_LINE 作为打印日志的方式,结果没过多久 PL ...

  6. java.IO输入输出流:过滤流:buffer流和data流

    java.io使用了适配器模式装饰模式等设计模式来解决字符流的套接和输入输出问题. 字节流只能一次处理一个字节,为了更方便的操作数据,便加入了套接流. 问题引入:缓冲流为什么比普通的文件字节流效率高? ...

  7. 笔记:Node.js 的 Buffer 缓冲区

    笔记:Node.js 的 Buffer 缓冲区 node.js 6.0 之前创建的 Buffer 对象使用 new Buffer() 构造函数来创建对象实例,但权限很大,可以获得敏感信息,所以建议使用 ...

  8. 【Download error:TOO MANY REQUESTS】&【TypeError:excepted string or buffer】

    <用python写网络爬虫>,1.4.4链接爬虫,运行时,遇到错误: Download error:TOO MANY REQUESTS Traceback(most recent call ...

  9. WebGPU学习(十一):学习两个优化:“reuse render command buffer”和“dynamic uniform buffer offset”

    大家好,本文介绍了"reuse render command buffer"和"dynamic uniform buffer offset"这两个优化,以及Ch ...

随机推荐

  1. Flask-RESTful 快速入门

    Flask-RESTful 快速入门 hello world from flask import Flask from flask_restful import Resource, Api app = ...

  2. 通过SQL Server 2008数据库复制实现数据库同步备份

    SQL Server 2008数据库复制是通过发布/订阅的机制进行多台服务器之间的数据同步,我们把它用于数据库的同步备份.这里的同步备份指的是备份服务器与主服务器进行 实时数据同步,正常情况下只使用主 ...

  3. ExtJs6.0.0随笔

    环境:extJs6.0.0GPL,对应SenchaCmd-6.0.2-windows-64bit(注意版本不能太高). 步骤: 1.安装senchaCmd 2.运行生成demo: http://doc ...

  4. ASP.NET Misconfiguration: Missing Error Handling

    Abstract: An ASP .NET application must enable custom error pages in order to prevent attackers from ...

  5. Scala

    简直就是java啊,mac上,下载,添加环境变量,source 就好了

  6. MySQL 第二篇

    一.MySQL多实例介绍 mysql多实例,共用一套mysql安装程序,使用不同的配置文件(my.cnf).启动程序.和数据文件,即在一台服务器上同时开启多个不同的服务器端口(3306,3307),同 ...

  7. android 开发 程序中下载安装APK文件 问题汇总 解析程序包时出现问题

    1 若把APK文件保存到应用程序的files目录下,则一定注意保存时使用 FileOutputStream os = openFileOutput(fileName, MODE_WORLD_READA ...

  8. c++面试题

    转自http://blog.csdn.net/jingxuewang110/article/details/6789557/ 1.new.delete.malloc.free关系 delete会调用对 ...

  9. 笔记19-徐 如何在超大型数据库上运行DBCC CHECKDB

    ) --以上方法TB级数据库的DBA可以考虑试试

  10. MIME Type

    一.首先,我们要了解浏览器是如何处理内容的.在浏览器中显示的内容有 HTML.有 XML.有 GIF.还有 Flash --那么,浏览器是如何区分它们,决定什么内容用什么形式来显示呢?答案是 MIME ...