触发器例子


如果设备表中的设备状态发生了改变,那么向消息表中插入数据

create OR REPLACE trigger trigger_XX
after update on T_XX
for each row
begin
if updateing then
   when(:new.DEVICE_STATUS<>:old.DEVICE_STATUS )
   begin
   
   select SEQ_XX_NEWS.NEXTVAL as ids
   insert into T_XX_REPORT_NEWS (id,REPORTNEWS) values(ids,:new.DEVICE_ID );
   end
end if;
end;

create OR REPLACE trigger trigger_XX
after update on T_XX
for each row
begin
if(:new.DEVICE_STATUS<>:old.DEVICE_STATUS) then
   insert into T_XX_REPORT_NEWS (id,REPORTNEWS,Reporttime) values(SEQ_XX_REPORT_NEWS.NEXTVAL,:new.DEVICE_ID,TO_CHAR(sysdate, 'yyyy-MM-dd HH24:MI:ss') );
end if;
end;

你可能感兴趣的:(oracle)