ストアド プロシージャに配列を使用する必要があります。だから私は型変数を作成しました:
CREATE OR REPLACE TYPE integer_array is table of number;
次に、ストアド プロシージャを記述しようとしましたが、コンパイルできません。
create or replace
PROCEDURE SP_TEST(
i_id_profiles in integer_array,
o_clients OUT SYS_REFCURSOR
)
AS
BEGIN
open o_clients for
FOR i IN 1..i_id_profiles.count LOOP
select a.id_client from b_client a, i_client_profile b where a.id_client = b.id_client
and b.id_profile = i_id_profiles(i);
END LOOP;
END SP_TEST;
手伝って頂けますか?選択した SYS_REFCURSOR を取得したい。
ありがとう
エラー:
PLS-00103: 次のいずれかを想定しているときに、シンボル「FOR」が検出されました: ( - + case mod new not null select with
continue avg count current exists max min before sql stddev sum difference execute forall merge time timestamp interval date pipePLS-00103: 次のいずれかを予期しているときに、シンボル"end-of-file"が検出されました: 終了プラグマではなく、インスタンス化可能な最終順序が静的メンバーのコンストラクタ・マップをオーバーライドしていません