我正在尝试创建一个值集合,我计划在其上运行FORALL DELETE FROM [table]。当我在子查询中有UDT时,似乎没有任何东西被大量收集到集合中。
…
我的问题不在这里。
SELECT ATTR1 BULK COLLECT INTO tmpTBL1 FROM Table1 WHERE ATTR1 NOT IN (SELECT ATTR1 FROM TABLE(tmpPList));
但是在这里。不需要整个for循环,没有它,FORALL语句工作正常。
FOR indx IN 1 .. tmpTBL1.COUNT LOOP Collection1(Collection1.COUNT + 1) := tmpPList(indx); END LOOP;