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

SQL ट्रिगर त्रुटि - अमान्य ट्रिगर

आप show errors . का उपयोग कर सकते हैं compiled with warnings . देखने के बाद , या user_errors . को क्वेरी करें बाद में क्या गलत है यह देखने के लिए देखें।

एक स्पष्ट बात यह है कि आपने old . से पहले नहीं लगाया है एक कोलन के साथ संदर्भ:

CREATE or REPLACE TRIGGER BeforeUpdateReport 
BEFORE 
UPDATE ON REPORT 
FOR EACH ROW 
Begin 
   INSERT INTO reportUpdate 
   Values(:old.ID,sysdate); 
END;
/

insert . में लक्ष्य तालिका फ़ील्ड निर्दिष्ट करना भी बेहतर है कथन:

   INSERT INTO reportUpdate (report_id, updatedate)
   Values(:old.ID,sysdate); 

लेकिन आपके पास update_date है आपकी तालिका निर्माण स्क्रिप्ट में number(32) . के रूप में परिभाषित किया गया है , जिसका कोई मतलब नहीं है। जैसा कि @realspirituals ने बताया, यह होना चाहिए:

CREATE TABLE reportUpdate (report_id number, updatedate date);



  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. Oracle - चुनें कि फ़ील्ड में लोअरकेस वर्ण कहाँ हैं

  3. सी # से ओरेकल में संग्रहित प्रक्रिया में इनपुट पैरामीटर के रूप में टेबल-प्रकार ऑब्जेक्ट पास करें

  4. Oracle ODP.Net और EF CodeFirst के साथ काम करने के लिए DbContext को कैसे कॉन्फ़िगर करें?

  5. Oracle में listagg का विकल्प?