Utworzyłbym taki typ bazy danych:
create type v2t as table of varchar2(30);
/
A potem w procedurze:
FOR i IN 1..associativeArray.COUNT LOOP
databaseArray.extend(1);
databaseArray(i) := associativeArray(i);
END LOOP;
OPEN refCursor FOR
SELECT T.*
FROM SOME_TABLE T,
( SELECT COLUMN_VALUE V
FROM TABLE( databaseArray )
) T2
WHERE T.NAME = T2.V;
(gdzie databaseArray jest zadeklarowana jako typu v2t.)