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

Oracle उत्परिवर्तित ट्रिगर

जैसा कि @San बताते हैं, persons . पर एक पंक्ति-स्तरीय ट्रिगर आम तौर पर persons से पूछताछ नहीं कर सकता टेबल।

आपको दो ट्रिगर की आवश्यकता होगी, एक पंक्ति-स्तरीय ट्रिगर जो पुराने और नए लिंग को देख सकता है और एक कथन-स्तरीय ट्रिगर जो गिनती कर सकता है। यदि आप 11g का उपयोग कर रहे हैं, तो आप पंक्ति और कथन-स्तर दोनों ब्लॉकों के साथ एक मिश्रित ट्रिगर भी बना सकते हैं।

create or replace trigger trg_stmt
  after update
  on persons
declare
  l_cnt integer;
begin
  select count(*)
    into l_cnt
    from persons;

  dbms_output.put_line( 'There are now ' || l_cnt || ' rows.' );
end;

create or replace trigger trg_row
  after update
  on persons
  for each row
begin
  if( :new.gender != :old.gender )
  then
    dbms_output.put_line( 'Old gender = ' || :old.gender || ', new gender = ' || :new.gender );
  end if;
end;



  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 फास्ट रिकवरी एरिया

  5. परिणाम सेट बंद करने के बाद Oracle कर्सर को नहीं हटाता है