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

डायनेमिक क्वेरी में v_MONTH के लिए अमान्य पहचानकर्ता त्रुटि

चूंकि आपने SQL कथन को एक स्ट्रिंग के रूप में बनाया है, PLSQL इंजन को चर नाम (उनके एक शाब्दिक स्ट्रिंग का सिर्फ एक हिस्सा) के लिए प्रतिस्थापित नहीं किया गया है, इसलिए SQL इंजन स्ट्रिंग 'V_MONTH' को देखता है लेकिन उस नाम से कोई कॉलम नहीं है इस प्रकार अमान्य पहचानकर्ता . यदि आप गतिशील एसक्यूएल के साथ रहते हैं तो आपको स्वयं मूल्य प्रतिस्थापन करना होगा। यही बात अन्य चरों पर भी लागू होती है। तो:

  EXECUTE IMMEDIATE UTL_LMS.FORMAT_MESSAGE(
  'UPDATE /*+ index(a LEDGER_STAT_DLY_IDX02_IN) */ LEDGER_STAT_DLY A
      SET %s =  NVL(%s,0) + NVL(%s ,0)
    WHERE IDENTITY_CODE =  NVL(%s ,0)
      AND YEAR_S =  NVL(%s ,0)
      AND MONTH_NO = NVL(%s ,0)'
     ,V_TARGET_COLUMN, V_TARGET_COLUMN ,V_AMOUNT,V_IDENTITY_CODE,V_YEAR_S,V_MONTH);

आपको कोई भी आवश्यक प्रारूप रूपांतरण करने की भी आवश्यकता हो सकती है।




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle किसी टेक्स्ट/सीएसवी फ़ाइल में क्वेरी कैसे निर्यात करें

  2. Oracleनिर्भरता के साथ OracleCommand हमेशा के लिए प्रतीक्षा कर रहा है

  3. ORA-00922:ऑरैकल में सेट लॉन्ग 100000 स्टेटमेंट निष्पादित करते समय लापता या अमान्य विकल्प

  4. Oracle में पैकेज के अंदर एक प्रक्रिया कैसे बनाएं

  5. OracleDecimal को .NET दशमलव w/truncation में कुशलतापूर्वक परिवर्तित करना