を私は次のトリガーがあります。MySQLのトリガがテーブル更新することはできません - 取得ERROR 1442
CREATE TRIGGER sum
AFTER INSERT
ON news
FOR EACH ROW
UPDATE news SET NEW.sum = (NEW.int_views + NEW.ext_views)/NEW.pageviews
をそれは、テーブルのint_views
とext_views
列を合計し、合計ページビューでそれらを分割します。
私はニュースに新しい行を追加しようとするたびに、私は次のエラーを取得する:
ERROR 1442 (HY000) at line 3: Can't update table 'news' in stored function/trigger because it is already used by statement which invoked this stored function/trigger.
トリガーは私には非常に簡単と思われます。トリガが実行されない理由はありますか?許可されていないテーブルを、変更の両方 - あなたはINSERT
トリガー内(すべての行の)UPDATE
を実行していることを
なし 'WHERE'条件? – jcho360
@ jcho360、申し訳ありませんが、どこに条件を含めるべきかわかりません。私は挿入された後、すべての行でトリガーを実行します。 – egidra
それがうまくいけない場合は、私が最後に – jcho360