我正在尝试使用动态 sql 来执行一个过程并检索输出参数:
v_sql := 'BEGIN ' || p_procname || '(''' || p_input1 || ''', ''' || p_input2 || ''', v_output1); END;';
DBMS_OUTPUT.PUT_LINE(v_sql);
EXECUTE IMMEDIATE v_sql;
我v_output1
声明了变量,但收到以下错误消息:
PLS-00201: identifier 'V_ISSUE' must be declared
如果我用 dbms_ouput 替换上述代码,则该过程有效v_sql
,因此在过程方面没问题,问题在于我尝试动态调用它的方式。
我不知道我正在尝试做的事情是否会以这种方式工作。有没有办法通过动态 SQL 从这个过程调用中检索输出参数?