0

だから私はテーブルを更新しようとしています。総合スコアがあり、その下に 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;
/

これは私のトリガーです。前後に試してみましたが、まだ同じエラーが発生しました (これは 2 行目の 1 つです)。なぜこれを行うのか、または問題が何であるかはわかりません。助けていただければ幸いです。

4

1 に答える 1

2

mutating-table の制限により、トリガーを実行するステートメントが変更しているテーブルをトリガーがクエリしたり変更したりできなくなります。http://docs.oracle.com/cd/E11882_01/appdev.112/e25519/triggers.htm#LNPLS759を参照してください。

于 2013-09-10T22:09:09.480 に答える