配列リストを処理する動的クエリを作成します。 PL/SQL:ステートメントは無視エラー(9,23):PLS-00306:間違った 数またはで引数の型動的SQLクエリで配列リストを処理する方法
create or replace TYPE p_type IS table of varchar2(4000) ;
CREATE OR REPLACE PROCEDURE test_proc_sk(
p_class_array IN p_type,
p_emp_record OUT SYS_REFCURSOR)
IS
lv_stmt VARCHAR2(100);
BEGIN
lv_stmt := 'Select * from dept where deptno = 10 ';
IF(p_class_array IS NOT NULL) THEN
lv_stmt := lv_stmt || 'AND dname IN (select column_value from table(' || p_class_array ||'))';
END IF;
dbms_output.put_line(lv_stmt);
OPEN p_emp_record FOR lv_stmt;
END;
それは、コンパイルエラー
エラー(9,5)を与えます'||'を呼び出す
あなたはコロン(:)でそれらの接頭辞うパラメータp_class_array
.IN、動的SQLをバインドする必要があります
より多くの条件がありますので、私は、 SQLを動的に使用します。 – user2190186