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

क्या ओरेकल में बाइंड वेरिएबल्स के माध्यम से कॉलम नामों को संदर्भित करना संभव है?

नहीं। आप टेबल या कॉलम नामों के लिए बाइंड वैरिएबल का उपयोग नहीं कर सकते।

निष्पादन योजना बनाने के लिए इस जानकारी की आवश्यकता है। उदाहरण के लिए, यह जाने बिना कि आप क्या ऑर्डर करना चाहते हैं, यह पता लगाना असंभव होगा कि किस इंडेक्स का उपयोग करना है।

बाइंड वेरिएबल्स के बजाय, जब आपका प्रोग्राम इसे बनाता है, तो आपको कॉलम नाम को सीधे SQL स्टेटमेंट में इंटरपोलेट करना होगा। यह मानते हुए कि आप SQL इंजेक्शन के प्रति सावधानी बरतते हैं, इसमें कोई कमी नहीं है।

अपडेट करें: यदि आप वास्तव में हुप्स से कूदना चाहते हैं, तो आप शायद कुछ ऐसा कर सकते हैं

order by decode(?, 'colA', colA, 'colB', colB)

लेकिन यह सिर्फ मूर्खतापूर्ण है। और धीमा। नहीं।



  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. पीएल/एसक्यूएल में फॉर्म-डेटा और पैरामीटर के साथ एक पोस्ट अनुरोध कैसे भेजा जाए

  3. Oracle में किसी संख्या के लिए डिफ़ॉल्ट प्रेसिजन और स्केल क्या है?

  4. एक कथन में अनुक्रम से कई NEXTVAL क्वेरी करें

  5. दो तिथियों के बीच व्यावसायिक दिन या घंटे कैसे प्राप्त करें