首页 > 数据库技术 > 详细

Oracle中的触发器TRIGGER

时间:2018-02-06 16:00:05      阅读:226      评论:0      收藏:0      [点我收藏+]
 1 CREATE OR REPLACE TRIGGER trgregisterpregroup
 2   BEFORE UPDATE
 3   ON tblregisterusers
 4   FOR EACH ROW
 5 
 6 DECLARE
 7 sort_id varchar2(2000);
 8 e_code  VARCHAR2(1000);
 9 BEGIN
10       IF :NEW.fldleftmoney <> :OLD.fldleftmoney THEN
11         select to_char(systimestamp(3),YYYYMMDDHH24MISSFF) into sort_id from dual;
12         e_code := NULL;
13         for R in (select a.fldusergroupid,
14                        a.fldx,
15                        a.fldy,
16                        a.fldz,
17                        a.fldserviceaid,
18                        a.fldservicebid,
19                        a.fldservicecid,
20                        a.flag
21                   from usergroupautoconfig a
22                  where a.fldusergroupid = :NEW.fldusergroupid and a.flag=1)
23           loop
24             if :NEW.fldleftmoney > R.fldz then
25               if R.fldservicecid is not null then
26                  e_code := PK_INTERFACE.user_pregroup(:NEW.FLDUSERNAME,R.fldservicecid,sysdate,9000,sort_id);
27               end if;
28             elsif (:NEW.fldleftmoney <= R.fldz) and (:NEW.fldleftmoney > R.fldy) then
29               if R.fldservicebid is not null then
30                  e_code := PK_INTERFACE.user_pregroup(:NEW.FLDUSERNAME,R.fldservicebid,sysdate,9000,sort_id);
31               end if;
32             else
33               if R.fldserviceaid is not null then
34                  e_code := PK_INTERFACE.user_pregroup(:NEW.FLDUSERNAME,R.fldserviceaid,sysdate,9000,sort_id);
35               end if;
36             end if;
37           end loop;
38        end if;
39     if e_code <> pk_common.E00 then
40           PK_PUBLIC.error_log(trgregisterpregroup:  || :NEW.flduserid || - || e_code);
41         end if;
42      EXCEPTION
43       WHEN OTHERS THEN
44         NULL;
45 END trgregisterpregroup;

 

Oracle中的触发器TRIGGER

原文:https://www.cnblogs.com/zhuziyu/p/8422600.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!