在 JBSQL 中增加缓冲区大小



我有一些Oracle PL?用户尝试使用 JBSQL 工具运行的 SQL 代码

有几行dbms_output - 当用户运行代码时,他们会收到错误

 ORA-06502: PL/SQL: numeric or value error: character string buffer too small

如何增加缓冲区大小?

我试过了

SET SERVEROUTPUT ON SIZE 1000000;

但得到"未知选项大小"。无论使用哪种工具设置缓冲区大小,是否有"默认"命令?或者我可以在我的 PL/SQL 中添加任何内容吗?

(最终我会将这些行写入表/文本文件,但需要启动并运行此过程以表明它是值得的 - 一切正常 - 只是最后通知用户的位!!(

任何帮助感激地收到

谢谢

话筒

SET SERVEROUTPUT是一个

SQL*Plus命令,它不是SQLPL/SQL命令。它只能在SQL*Plus或类似SQL*Plus的工具(Toad,SQL开发人员...(中使用。

可以使用DBMS_OUTPUT.enable(buffer_size)来增加默认输出缓冲区大小。但请注意,您的错误可能来自其他地方:ORA-06502是一个通用错误,可以通过变量太小时的任何赋值引发。

SET SERVEROUTPUT ON SIZE n;是一个SQL*Plus命令,但许多编辑器允许使用它。无论如何,您可以尝试一下:

BEGIN
  DBMS_OUTPUT.ENABLE(BUFFER_SIZE => 1000000);
END;

你使用的是哪个版本的 JBSql?通常,从版本 1.1.0.2 开始,缓冲区大小已从 255 个字符增加到 32767 个字符。如果最新版本(1.3.0.0(仍然失败,请提供一个测试用例来 http://duofoto.be/mantis

最新更新