触发器和变异的问题

时间:2013-09-10 21:44:41

标签: oracle plsql triggers

所以我正在尝试更新表格。我有一个总分,然后它下面有4个分数,这些都是总分的派生属性。当其他一个分数发生变化时,我的触发器应该更新整体分数。

create or replace trigger change_score
after insert or update of assault_score on player_score
for each row
begin
 if inserting then
   update player_score
      set overall_score = overall_score + :new.assault_score;
 elsif updating then
    update player_score
 set overall_score = overall_score + :new.assault_score - :old.assault_score;
 end if;
 end;
/

这是我的触发器,我已经尝试过前后,仍然有同样的错误(这是第二行)我不知道为什么它这样做或问题是什么,任何帮助将不胜感激。< / p>

1 个答案:

答案 0 :(得分:2)

变异表限制可防止触发器查询或修改触发语句正在修改的表。见http://docs.oracle.com/cd/E11882_01/appdev.112/e25519/triggers.htm#LNPLS759