SQL Developerを使用してOracleストアド・プロシージャをコールしようとしています。 procはsys_refcursorを使用して結果を出力します。 procウィンドウを右クリックすると、Run PL/SQLウィンドウが表示されます。私はprocを選択するとき、私はそれが私のためのすべての入力パラメータなどを作成したい。以下は、sys_refcursorをループして結果を出力しようとするコードですが、 'v_rec v_Return%rowtype;'にエラーが発生しています。 PLS-00320:この式のタイプの宣言は不完全であるか、または形式が正しくありません。PLS-00320:この式のタイプの宣言は、完全ではありません。 ORA-06550:行6列9: PL/SQL:項目はSQL Developerからのストアド・プロシージャの出力結果
ベンダーコード6550
を無視し、私は他のウェブサイトのカップルにループのコードを発見し、それを行うための方法のようですが、私が何を試しても、それは私のために働いていません。 DBMS_OUTPUT.PUT_LINE( 'name =' || v_rec.ADM)に関するもう1つの質問は、v_recを正しく参照していますか?つまり、v_rec。 "column_name"は正しい方法ですか?
私はOracleに慣れておらず、SQL Plusを一度も使用していません。任意の提案が高く評価されました。
DECLARE
P_CAE_SEC_ID_N NUMBER;
P_PAGE_INDEX NUMBER;
P_PAGE_SIZE NUMBER;
v_Return sys_refcursor;
v_rec v_Return%rowtype;
BEGIN
P_CAE_SEC_ID_N := NULL;
P_PAGE_INDEX := 0;
P_PAGE_SIZE := 25;
CAE_FOF_SECURITY_PKG.GET_LIST_FOF_SECURITY(
P_CAE_SEC_ID_N => P_CAE_SEC_ID_N,
P_PAGE_INDEX => P_PAGE_INDEX,
P_PAGE_SIZE => P_PAGE_SIZE,
P_FOF_SEC_REFCUR => v_Return
);
-- Modify the code to output the variable
-- DBMS_OUTPUT.PUT_LINE('P_FOF_SEC_REFCUR = ');
loop
fetch v_Return into v_rec;
exit when v_Return%notfound;
DBMS_OUTPUT.PUT_LINE('name = ' || v_rec.ADM);
end loop;
END;