加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

oracle 触发器

发布时间:2020-12-12 14:47:16 所属栏目:百科 来源:网络整理
导读:触发器的时机,有before和after。二者使用场合肯定不一样。我想到的是: 1、before:插入或修改前,一般是针对本表操作做一些补充和完善 2、after:插入或修改后,可以针对关联表做一些操作 举个栗子: create or replace trigger trg_alert_level before in

触发器的时机,有before和after。二者使用场合肯定不一样。我想到的是:

1、before:插入或修改前,一般是针对本表操作做一些补充和完善
2、after:插入或修改后,可以针对关联表做一些操作

举个栗子:

create or replace trigger trg_alert_level before insert on hy_data_handle_record for each row declare -- local variables here begin select max(s_level) into :NEW.ALERT_LEVEL from( select :NEW.l_ph s_level from dual union all select :NEW.l_do s_level from dual union all select :NEW.l_cod s_level from dual union all select :NEW.l_andan s_level from dual union all select :NEW.l_wujidan s_level from dual union all select :NEW.l_linsuanyan s_level from dual union all select :NEW.l_zonglin s_level from dual union all select :NEW.l_vedio s_level from dual );

end trg_alert_level;
/

上面这个触发器,就是在记录插入前,从该记录的一系列字段中找出一个最大值,付给字段alert_level,功效就是记录插入后,所有字段的值都妥妥的。
这个:NEW,就是正在插入的记录本身。

for update的也一样,也可以使用:NEW

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读