触发器里面能写逻辑判断吗?我看了一个例子他是调用存储过程做判断的。

解决方案 »

  1.   

    create or replace trigger tr2
      after--插入的时间  
       insert or delete or update
       on stu0824 --目标对象
      for each row--如果写这个,表示对每行都进行触发
    declare
      
    begin
     if inserting then
     insert into stulog1(id,stime,info)
     values(xk0824.nextval,sysdate,'插入操作');
     elsif deleting then
      insert into stulog1(id,stime,info)
     values(xk0824.nextval,sysdate,'删除操作');
     else
      insert into stulog1(id,stime,info)
     values(xk0824.nextval,sysdate,'更新操作');
     end if;
    end tr1;
    /
      

  2.   

    我也给你个简单的例子:create or replace trigger up_sal
    after update on emp
    for each row
    begin
     if(:new.sal<:old.sal) then
     insert into tmp_table
     values(:old.empno,:old.ename,:old.sal,:new.sal,:old.job);
    end if;
    end;