विफल रहता है बस मैं निर्दिष्ट आईडी के लिए एक कर्सर प्राप्त करने का प्रयास कर रहा हूं।इन-क्लॉज में ओरेकल टेबल प्रकार का उपयोग करना - संकलन
CREATE OR REPLACE PACKAGE some_package AS TYPE t_cursor IS REF CURSOR; TYPE t_id_table IS TABLE OF NVARCHAR(38) INDEX BY PLS_INTEGER; PROCEDURE someentity_select( p_ids IN t_id_table, p_results OUT t_cursor); END; CREATE OR REPLACE PACKAGE BODY some_package AS PROCEDURE someentity_select( p_ids IN t_guid_table, p_results OUT t_cursor) IS BEGIN OPEN p_results FOR SELECT * FROM someschema.someentity WHERE id IN (SELECT column_value FROM TABLE(p_ids)); - fails here END; END;
नोट: someschema.someentity.id एक NVARCHAR2 (38)
हैPL/SQL: ORA-00,382: ORA-22,905: पंक्तियों तक नहीं पहुँच सकता अभिव्यक्ति गलत प्रकार का
PL/SQL है गैर-नेस्टेड टेबल आइटम से
मैं गलत कहां जा रहा हूं?
धन्यवाद .. लेकिन अब यह ओआरए -12714 दिखाता है: उस रेखा पर निर्दिष्ट अवैध राष्ट्रीय चरित्र सेट .. हालांकि बहुत करीब है। –
आप इसके बारे में एक और सवाल पोस्ट करना चाहेंगे, क्योंकि यह एक पूरी तरह से अलग समस्या है और मुझे राष्ट्रीय चरित्र सेट मुद्दों के बारे में कोई जानकारी नहीं है। –