Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

चयन में Oracle पैरामीटर का उपयोग करने में समस्या

मानों का एक सेट पास करने के लिए, आपको Oracle की तालिका या सरणी प्रकारों का उपयोग करने की आवश्यकता है।

सबसे पहले, आप एक तालिका प्रकार बनाते हैं (उदा. NUMBER के लिए):

CREATE TYPE number_table AS TABLE OF NUMBER; 

जब आप क्वेरी के लिए पैरामीटर बनाते हैं, तो इसे एक सहयोगी PL/SQL सरणी के रूप में घोषित करें:

OracleParameter param1 = new OracleParameter(); 
param1.OracleDbType = OracleDbType.Int32; 
param1.CollectionType = OracleCollectionType.PLSQLAssociativeArray; 

फिर कुछ मान निर्दिष्ट करें:

param1 = new int[] { 3857, 3858, 3863, 3285 }; 

और आपकी क्वेरी को एक कास्ट की आवश्यकता है:

SELECT * FROM tablename a 
where a.flokkurid in (TABLE(CAST(:manyNumbers AS number_table)))
order by sjodategund, rodun 


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. क्या हमें प्राथमिक कुंजी के लिए शून्य नहीं निर्दिष्ट करने की आवश्यकता है? ओरेकल/एसक्यूएल

  2. ऑरैकल 18 में json_table के माध्यम से पार्स जोंस

  3. ओरेकल में 'सिंगल कोट' का अनुमान और बचाव कैसे करें?

  4. RMAN और ORA-00245 . के साथ स्नैपशॉट नियंत्रण फ़ाइल सुविधा

  5. Oracle डेटाबेस में सेलेक्ट INTO स्टेटमेंट के साथ बल्क कलेक्ट क्लॉज का उपयोग कैसे करें