zoukankan      html  css  js  c++  java
  • oracle创建触发器及作用举例

    --创建触发器及作用举例
    create or replace trigger tri
    before delete on emp 
    --在删除emp表数据之前需要做的事根据自己的业务去写,before是在之前做的事,after是在之后要做的事
    declare
    t_result number := 10;
    begin
      dbms_output.put_line('admin' || t_result);
    end tri;
    
    --下面是对表某些字段进行更新之后做的操作
    create or replace trigger TRI_DISPLAYTABLE
    after update of datatype,dbcolumnname,name on P#GCFR_T_FACTOR
    for each row
    declare
    errno number;
    errmsg varchar2(30);
    begin
    if updating ('datatype') then
    update GCFR_T_DISPLAYTABLE t set t.datatype = :new.datatype where t.viewname = :old.dbtablename
    and t.isvirtualcolumn = 0 and t.columncode = :old.dbcolumnname;
    end if;
    
    if updating ('dbcolumnname') then
    update GCFR_T_DISPLAYTABLE t set t.datatype = :new.datatype where t.viewname = :old.dbtablename
    and t.isvirtualcolumn = 0 and t.columncode = :old.dbcolumnname;
    end if;
    
    if updating ('name') then
    update GCFR_T_DISPLAYTABLE t set t.datatype = :new.datatype where t.viewname = :old.dbtablename
    and t.isvirtualcolumn = 0 and t.columncode = :old.dbcolumnname;
    end if;
    end;
    
    --删除触发器
    drop trigger tri;
  • 相关阅读:
    嵌入式操作系统-小型任务调度的理解(转)
    数据分析-pandas基础入门(一)
    硬件电路设计——低通滤波器的应用
    Docker
    AWK总结
    DNS解析
    TCP/IP
    Mysql优化部分总结
    Nginx配置文件释义备查
    时间模块
  • 原文地址:https://www.cnblogs.com/hkdpp/p/8301926.html
Copyright © 2011-2022 走看看