PL/SQL 过程成功完成但 Oracle SQL 开发人员中没有输出

PL/SQL procedure successfully completed but no output in Oracle SQL developer

当 运行 SQL 开发人员 运行 window 中的代码片段时,它工作正常,并显示在底部的 OutputVaribles 部分中。但是当 运行 来自 SQL 文件的程序成功完成但没有显示输出时

set serveroutput on

DECLARE
INTCHARTIDS DDI.P_CHARTS_QUERY.ARRAYINTCHARTIDS;

A DDI.P_CHARTS_QUERY.CURSOROBJECT;
B DDI.P_CHARTS_QUERY.CURSOROBJECT;
C DDI.P_CHARTS_QUERY.CURSOROBJECT;
D DDI.P_CHARTS_QUERY.CURSOROBJECT;
E DDI.P_CHARTS_QUERY.CURSOROBJECT;
F DDI.P_CHARTS_QUERY.CURSOROBJECT;
G DDI.P_CHARTS_QUERY.CURSOROBJECT;
H DDI.P_CHARTS_QUERY.CURSOROBJECT;
I DDI.P_CHARTS_QUERY.CURSOROBJECT;

BEGIN
   INTCHARTIDS(1):=2568;
   DDI.P_CHARTS_QUERY.OPENCHARTS(INTCHARTIDS=>INTCHARTIDS,
                         INTUNITSYSTEMID=>30,
                         INTEDITEDBY=>1565,
                         INTOPENMODE=>1,
                         CHARTOBJECT=>A,
                         CHARTAXISOBJECT=>B,
                         CHARTSERIESOBJECT=>C,
                         CHARTSERIESRUNOBJECT=>D,
                        CHARTSUBSETOBJECT=>E,
                         CHARTSUBSETDATAOBJECT=>F,
                         CHARTANNOTATIONOBJECT=>G,
                         CHARTSERIESCONTROLRUNOBJECT=>H,
                         CHARTSERIESRUNGROUPOBJECT=>I
                         );

END;

PL/SQL procedure successfully completed, but no output

我找到了答案。

我曾尝试过多种选择,但现在知道我需要在过程结束时加入正斜杠 (/)。然后可以将输出分配给游标变量。

    set serveroutput on;

VAR CHARTOBJECT refcursor;
VAR CHARTAXISOBJECT refcursor;
VAR CHARTSERIESOBJECT refcursor;
VAR CHARTSERIESRUNOBJECT refcursor;
VAR CHARTSUBSETOBJECT refcursor;
VAR CHARTSUBSETDATAOBJECT refcursor;
VAR CHARTANNOTATIONOBJECT refcursor;
VAR CHARTSERIESCONTROLRUNOBJECT refcursor;
VAR CHARTSERIESRUNGROUPOBJECT refcursor;


DECLARE
INTCHARTIDS DDI.P_CHARTS_QUERY.ARRAYINTCHARTIDS;

A DDI.P_CHARTS_QUERY.CURSOROBJECT;
B DDI.P_CHARTS_QUERY.CURSOROBJECT;
C DDI.P_CHARTS_QUERY.CURSOROBJECT;
D DDI.P_CHARTS_QUERY.CURSOROBJECT;
E DDI.P_CHARTS_QUERY.CURSOROBJECT;
F DDI.P_CHARTS_QUERY.CURSOROBJECT;
G DDI.P_CHARTS_QUERY.CURSOROBJECT;
H DDI.P_CHARTS_QUERY.CURSOROBJECT;
I DDI.P_CHARTS_QUERY.CURSOROBJECT;

BEGIN
   INTCHARTIDS(1):=2619;
--   INTCHARTIDS(2):=2572;
--   INTCHARTIDS(3):=2573;
   DDI.P_CHARTS_QUERY.OPENCHARTS(INTCHARTIDS=>INTCHARTIDS,
                         INTUNITSYSTEMID=>30,
                         INTEDITEDBY=>1565,
                         INTOPENMODE=>1,
                         CHARTOBJECT=>:CHARTOBJECT,
                         CHARTAXISOBJECT=>:CHARTAXISOBJECT,
                         CHARTSERIESOBJECT=>:CHARTSERIESOBJECT,
                         CHARTSERIESRUNOBJECT=>:CHARTSERIESRUNOBJECT,
                        CHARTSUBSETOBJECT=>:CHARTSUBSETOBJECT,
                         CHARTSUBSETDATAOBJECT=> :CHARTSUBSETDATAOBJECT,
                         CHARTANNOTATIONOBJECT=>:CHARTANNOTATIONOBJECT,
                         CHARTSERIESCONTROLRUNOBJECT=>:CHARTSERIESCONTROLRUNOBJECT,
                         CHARTSERIESRUNGROUPOBJECT=>:CHARTSERIESRUNGROUPOBJECT
                         );

END;
/
Print CHARTOBJECT  ;
Print CHARTAXISOBJECT  ;
Print CHARTSERIESOBJECT  ;
Print CHARTSERIESRUNOBJECT  ;
Print CHARTSUBSETOBJECT  ;
Print CHARTSUBSETDATAOBJECT  ;
Print CHARTANNOTATIONOBJECT  ;
Print CHARTSERIESCONTROLRUNOBJECT  ;
Print CHARTSERIESRUNGROUPOBJECT  ;