create or replace trigger t1
before update of sal,comm on emp
for each row
begin
if :new.sal+:new.comm >20000 then
raise_application_error(-20010,'总工资太高');
end if;
end;
我执行没有问题,正常触发异常
CREATE OR REPLACE TRIGGER t1
BEFORE UPDATE OF sal,comm ON emp
FOR EACH ROW
BEGIN
IF :new.sal+:new.comm > 20000 THEN
raise_application_error(-20010,'总工资太高');
END IF;
END;
Script Output输出的信息:
Error starting at line : 661 in command -
UPDATE emp SET sal=18000,comm=3000 WHERE id=1
Error report -
SQL Error: ORA-20010: 总工资太高
ORA-06512: at "IIS.T1", line 3
ORA-04088: error during execution of trigger 'IIS.T1'