【问题标题】:DBMS_Output: Some extra "enable" might be missingDBMS_Output:可能缺少一些额外的“启用”
【发布时间】:2020-09-06 21:14:59
【问题描述】:

抱歉这个愚蠢的问题。我被 Dbms_Output 困住了:

首先我在批处理/sqlplus 调用中进行了尝试。但假脱机文件将只包含消息“pl/sql 成功执行”。 (见第一个代码部分)

我在 Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 上运行代码

Spool D:\log\spool.txt 
Declare
    Some_Num Number := 5;
Begin
    Dbms_Output.Enable(1000000);
    Dbms_Output.Put_Line('Id, Timestamp');
    For Rec In 
    (
        Select 1 As Id, Sysdate As Timestamp From Dual
        Union
        Select 2 As Id, Sysdate As Timestamp From Dual
        Union
        Select 3 As Id, Sysdate As Timestamp From Dual
        Union
        Select 4 As Id, Sysdate As Timestamp From Dual
    )
    Loop
        Dbms_Output.Put_Line( Rec.Id || ', ' ||  Rec.Timestamp );
        -- some code here was actually executed;
    End Loop;
    --Dbms_Output.Disable;
Exception
When Others Then
    Null;
    Dbms_Output.Put_Line('Error');
    --Dbms_Output.Disable;
End;
/
Spool Off
exit;

【问题讨论】:

    标签: sql dbms-output


    【解决方案1】:

    自己找到的。我需要添加

    SET SERVEROUTPUT ON SIZE 1000000
    

    在脚本的开头。

    【讨论】:

      猜你喜欢
      • 2012-06-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-20
      • 1970-01-01
      • 1970-01-01
      • 2019-04-11
      相关资源
      最近更新 更多