0

Oracle Sql Developerを使用して、「、」(動的SQL )で区切られた値のリストを受け入れるStored Procを作成し、この変数を「in」句で使用して、テーブルからクエリを起動しています。

しかし、私はエラーで終わっています

@p_case_nbr       varchar2(100),

エラー(4,5): PLS-00103: 次のいずれかを予期しているときに記号「@」が検出されました: 現在の削除は以前に存在します

使用した SP:

    create or replace
procedure TEST_PROC
(   
    @p_case_nbr       varchar2(100),
    p_out_case_nbr    out varchar2 
)
as
  cursor test_cur is
      select t.COLUMN1
      from test_table t
      where t.column1 in (@p_case_nbr);

      test_cur_line  test_cur%ROWTYPE;
begin

p_out_case_nbr := null;

  open test_cur;
    LOOP
      FETCH test_cur INTO test_cur_line;
      EXIT WHEN test_cur%NOTFOUND;

      p_out_case_nbr := p_out_case_nbr || ' ' || test_cur_line.COLUMN1;
      dbms_output.put_line(test_cur_line.COLUMN1);

   end loop;
  close test_cur; 

  dbms_output.put_line('Final Value ' || p_out_case_nbr);
  dbms_output.put_line('SP Completed Succesfully');
end;
4

1 に答える 1