症状 つまり、UPDATE
を実行しているということです。 (すべての行に対して)INSERT
内 トリガー-両方ともテーブルを変更しますが、これは許可されていません。
とはいえ、トリガーの意図が正しく推測された場合、すべてを更新する必要はありません。 行ですが、新しく挿入された行のみです。
で簡単に達成できますCREATE TRIGGER sum
BEFORE INSERT
ON news
FOR EACH ROW
SET NEW.sum = (NEW.int_views + NEW.ext_views)/NEW.pageviews
これはBEFORE INSERT
であることに注意してください テーブルに書き込まれる前に行を変更したいので、トリガーします。