I need to use Array Variable (out from Execute Immediate) as Parameter in Select Statement in Store Procedure.
Create new type as Varray (As Below code)
CREATE OR REPLACE TYPE Array_LIST AS VARRAY(200) OF VARCHAR2(10);
Then Create my procedure that return table
CREATE OR REPLACE PROCEDURE SchemaName.ProcedureName
(Query_String IN VARCHAR2, Ref_Cursor OUT SYS_REFCURSOR)
AS
BEGIN
DECLARE COMCODE Array_LIST;
BEGIN
EXECUTE IMMEDIATE Query_String BULK COLLECT INTO COMCODE;
BEGIN
Open Ref_Cursor For
SELECT
Column1, Column2
From Table_Name
Where
Column1 IN (COMCODE);
END;
END;
END;
When I executed this procedure, I got below error
==> ORA-00932: inconsistent datatypes : expected NUMBER got Scheman_Name.Array_LIST
Can anyone help me!