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

Oracle (11g) कंपाउंड ट्रिगर CLOB डेटा फ़ील्ड को अपडेट नहीं कर रहा है

इस मुद्दे पर रुकने का समय नहीं होने के कारण मैंने इसे एक चर का उपयोग करके हल किया।

डिक्लेरेशन सेक्शन में एक CLOB वैरिएबल घोषित करना और :new.clob_field का मान असाइन करना या तो प्रत्येक पंक्ति से पहले, या प्रत्येक पंक्ति के बाद, और ट्रिगर के भीतर :new.clob_field के बजाय अपने इंसर्ट/अपडेट स्टेटमेंट में वेरिएबल का उपयोग करना इस समस्या को हल करता है।

मुझे इससे जूझ रहे लोगों की बहुत सी पोस्ट मिलीं (कंपाउंड ट्रिगर्स विशेष रूप से, साधारण ट्रिगर नहीं), इसलिए मुझे उम्मीद है कि मैंने इस पर जो समय बिताया है वह किसी और की मदद करता है और उनका समय बचाता है।

यह वास्तव में मेरे विवेक के लिए मददगार होगा यदि कोई इस पोस्ट पर आता है जो इसका कारण जानता है:new.clob_field प्रत्येक पंक्ति अनुभाग से पहले/बाद में सम्मिलित/अद्यतन विवरण में उपयोग किए जाने पर एक कंपाउंड ट्रिगर में अपना मूल्य खो देता है। मेरे मन में इस विचार के साथ एक दिन मरना भयानक होगा...

मैं यह भी मानूंगा कि यह BLOB के लिए भी काम करेगा (यदि इससे कोई समस्या होती है)।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL सर्वर और Oracle 'उपयोगकर्ता' के बीच अंतर

  2. टाइमस्टैम्प और दिनांक फ़ील्ड के साथ जेपीए चयन क्वेरी परिणाम प्राप्त करने में विफल रहता है

  3. ORA-00900:अमान्य SQL कथन त्रुटि? मेरे sql में क्या गलत है?

  4. Oracle.ManagedDataAccess कनेक्शन स्ट्रिंग में उपनाम का समाधान नहीं कर रहा है

  5. SQL डेवलपर का उपयोग करके बड़ी मात्रा में डेटा कैसे निर्यात करें - Oracle