ODP.NET के माध्यम से प्रक्रिया कॉल केवल सहयोगी सरणियों का समर्थन करता है, अर्थात INDEX BY ...
के साथ , नेस्टेड टेबल समर्थित नहीं हैं।
एक उपाय यह है कि आप अपनी ओरल प्रक्रिया में कनवर्ट करें:
CREATE OR REPLACE PACKAGE test_package_gkeu IS
TYPE test_type IS TABLE OF NUMBER;
TYPE test_type_associative IS TABLE OF NUMBER INDEX BY INTEGER;
PROCEDURE TEST1 (pvTest IN test_type_associative ) IS
v test_type := test_type();
BEGIN
v.Extend(pvTest.COUNT);
for i in pvTest.First..pvTest.Last loop
v(i) := pvTest(i)
end loop;
select *
into ...
from receiver r
where r.receiverid MEMBER OF (v);
END;
DML स्टेटमेंट के लिए इस पर भी विचार करें:
FORALL i IN INDICES OF pvTest
INSERT INTO MY_TABLE (COL_A)
VALUES (pvTest(i));
or
FORALL i IN INDICES OF pvTest
DELETE FROM receiver
WHERE receiverid = pvTest(i);