【发布时间】:2012-05-02 03:26:43
【问题描述】:
在 SQLPLUS 下执行我的脚本时遇到问题。在 SQL Developer 下运行良好。
set serveroutput on size 1000000
declare
yyy varchar2(32000):='';
begin
yyy := 'XxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzz';
yyy := yyy || 'XxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzz';
yyy := yyy || 'XxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzzXxxYyyZzz';
dbms_output.put_line(yyy);
end;
/
在 SQLPLUS 下我得到错误:
ORA-06502: PL/SQL: numeric or value error: character to number conversion error ORA-06512: at line 1
任何解决方案如何在 SQLPLUS 下强制运行具有长输出的脚本?我需要输出,因为我将结果假脱机到文件中。
【问题讨论】:
-
在 SQL*Plus 中对我来说很好。
-
我有 SQLPlus 版本,该版本已添加到 Oracle 10g 安装中。它在多台计算机(无论是 win7 还是 xp)上都会出现这样的错误。我运行 SQLPlus,然后通过
@script.sql调用具有上述内容的脚本。也许我的版本有问题? -
它在我的 Sql*plus 中也能正常工作。
-
当我尝试在 sqlplus 中打印超过 255 个字符时,我在 oracle 8i 中遇到了同样的错误