SQLPLUS 命令跳过:设置 serveroutput on;

Posted

技术标签:

【中文标题】SQLPLUS 命令跳过:设置 serveroutput on;【英文标题】:SQLPLUS Command Skipped: set serveroutput on; 【发布时间】:2014-06-24 07:01:54 【问题描述】:

在 ORACLE SQL Developer 中,当我尝试使用其输出运行过程调用时,它会被执行。

create or replace
procedure allparam_proc(name varchar2,nestedtable_param VARCHAR2_TT)
is
begin
   DBMS_OUTPUT.PUT_LINE('allparam_proc');
    FOR i IN nestedtable_param.FIRST..nestedtable_param.LAST LOOP
        DBMS_OUTPUT.PUT_LINE(nestedtable_param(i));
    END LOOP;
end;

问题:

set serveroutput on;
declare
fruits VARCHAR2_TT := VARCHAR2_TT('Orange','Kumquat','Grape','Banana');
begin
    allparam_proc('leo',fruits);
end;

输出:

第 1 行:跳过 SQLPLUS 命令:设置 serveroutput on;

【问题讨论】:

您能说说您使用的SQL Developer 的版本吗?启用服务器输出可以通过View -> Dbms Output 完成;分号就好了。选择需要执行的内容,F5 就足够了。好的做法是用/ 结束每个PL/SQL 块,尽管有时该工具会隐式执行。 是的,它可以作为答案。 很好,发布的答案很少有额外的信息和参考。谢谢! 【参考方案1】:

在 SQL Developer 中,可以通过 View -> Dbms Output 启用 serveroutput

使用分号很好。但是,选择需要执行的内容,F5(作为 脚本 执行)就足够了。

良好做法是用/ 结束每个PL/SQL 块,尽管该工具有时会隐式执行此操作。至少当IDE 有多个anonymous PL/SQL 块时,它提高了可读性和连续性。Answers here 有详细的解释。

【讨论】:

感谢您的回答。

以上是关于SQLPLUS 命令跳过:设置 serveroutput on;的主要内容,如果未能解决你的问题,请参考以下文章

转载Oracle sqlplus中最简单的一些命令,设置显示的格式

sqlplus多行代码怎么

生成Oracle的AWR报告

自定义一个符合习惯的基于DOS的sqlplus命令行

sqlplus 命令问题

SQL*Plus 禁用或跳过 ACCEPT PROMPT