zoukankan      html  css  js  c++  java
  • Oracle 的一个非常好的触发器例子

    CREATE OR REPLACE TRIGGER test_trigger
    AFTER INSERT OR UPDATE OF sal OR DELETE 
    ON emp
    FOR EACH ROW
    BEGIN
      CASE
      WHEN INSERTING THEN  --当事件为INSERT时,INSERTING为TRUE
        /*
        :NEW关键字可以获取新记录的数据,它只能用于行级触发器
        */
        DBMS_OUTPUT.PUT_LINE('INSERT INTO EMP VALUES('||:NEW.empno||','||:NEW.ename||','||:NEW.job||','||:NEW.mgr||','||:NEW.hiredate||','||:NEW.sal||','||:NEW.comm||','||:NEW.deptno||')');
      WHEN UPDATING THEN  --当事件为UPDATE时,UPDATING为TRUE
        DBMS_OUTPUT.PUT_LINE('UPDATING emp which empno='||:OLD.empno||'to sal:'||:NEW.sal);--:OLD关键字可以获取旧记录的数据,它只能用于行级触发器
      WHEN DELETING THEN  --当事件为DELETE时,DELETING为TRUE
        DBMS_OUTPUT.PUT_LINE('DELETING emp which empno='||:OLD.empno);--:OLD关键字可以获取旧记录的数据,它只能用于行级触发器
      ELSE
        NULL;
      END CASE;
    EXCEPTION
      WHEN DUP_VAL_ON_INDEX THEN
        NULL;
      WHEN OTHERS THEN
        RAISE_APPLICATION_ERROR(SQLCODE,SQLERRM);
    END test_trigger;
  • 相关阅读:
    大数减法模板
    扩展kmp模板
    poj2185(kmp)
    poj3167(kmp)
    kuangbin专题K(next数组)
    kuangbin专题16I(kmp)
    kuangbin专题16H(next数组)
    kuangbin专题16D(next求最小循环节)
    kuangbin专题16B(kmp模板)
    Java集合--TreeSet
  • 原文地址:https://www.cnblogs.com/canyangfeixue/p/2721283.html
Copyright © 2011-2022 走看看