肯定一点:你的触发器语句没有问题。
我觉得问题可能出在if里面的那个INSERT,检查目标表的字段名是否正确

解决方案 »

  1.   

    CREATE OR REPLACE TRIGGER ffalarm before insert on ems.EMS_EVENT for each row
    begin
    if :new.PROFESSION_ID=10 then
    insert into ffalarm.ALARM_REPORT_INTERFACE(SERIALNUM,ALARMID,CLEARFLAG) values('999','465','5');
    end if;
    end;把那个ffalarm去掉试试看
      

  2.   

    CREATE OR REPLACE TRIGGER ffalarm before insert on ems.EMS_EVENT for each row
    begin
    if :new.PROFESSION_ID=10 then
    insert into ffalarm.ALARM_REPORT_INTERFACE(SERIALNUM,ALARMID,CLEARFLAG) values('999','465','5');
    end if;
    end ffalarm;
    /
    你是说按上面的写在编译时报错,将:new改为new就不报错,但执行时报错吗?如果是这样的,那么检查表ems.EMS_EVENT是否包含字段PROFESSION_ID