在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;
答案 0 :(得分:3)
在SQL Developer中,可以通过View -> Dbms Output
使用Semicolon很好。但是,选择要执行的内容,F5
(作为脚本执行)就足够了。
良好实践,是使用/
结束每个PL / SQL块,尽管该工具有时会隐式执行。当IDE
有多个anonymous PL/SQL块时,它可以提高可读性和连续性。
Answers here有详尽的解释。