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

किसी अन्य तालिका में सम्मिलित करने के लिए ट्रिगर बनाएं

आप एक ही तालिका से एक पंक्ति ट्रिगर में रिकॉर्ड पुनर्प्राप्त नहीं कर सकते। आप वास्तविक रिकॉर्ड से मूल्यों का उपयोग कर सकते हैं:नया और:पुराना (क्या यह आपका मामला है?) इसके बाद ट्रिगर को

. पर फिर से लिखा जा सकता है
CREATE OR REPLACE TRIGGER AFTERINSERTCREATEBILL
AFTER INSERT
ON READING
FOR EACH ROW 

DECLARE

  varCustID   Varchar(10);

BEGIN 

  Select CustID INTO varCustID
    From Address A
    Join Meter M 
      on A.postCode = M.postCode
    Where M.MeterID = :new.MeterID;

  INSERT INTO BILL VALUES 
  (SEQBILLNO.NEXTVAL, SYSDATE, 'UNPAID' , 100 , varCustID , SEQREADNO.CURRVAL); 

END;

यदि आपको रीडिंग टेबल से अन्य रिकॉर्ड पूछने की आवश्यकता है तो आपको स्टेटमेंट ट्रिगर्स, रो ट्रिगर और पीएलएसक्यूएल संग्रह के संयोजन का उपयोग करना होगा। इसका अच्छा उदाहरण AskTom.oracle.com पर है।



  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. SQL सर्वर में, मैं किसी लिंक किए गए सर्वर कनेक्शन पर Oracle टाइमस्टैम्प कॉलम को कैसे क्वेरी कर सकता हूं?

  3. क्या तालिका में विभिन्न पंक्तियों को अद्यतन और हटाते समय गतिरोध संभव है?

  4. Oracle से JDBC- अनुरूप डेटाबेस को पाई जितना आसान क्यों नहीं क्वेरी कर रहा है?

  5. संग्रह प्रकार oracle 12c - ORA-00902 से तालिका में सम्मिलित करें:अमान्य डेटाटाइप