7

MySQL の単一のテーブルに before insert トリガーと after insert トリガーを書きました。しかし、トリガーの1つは、他のトリガーを置くと自動的に置き換えられます。挿入トリガーの後に置くと、挿入前のトリガーコードが自動的に置き換えられます。削除されることに注意してください。または、コードが削除される可能性があります。

両方とも別々に正常に動作します。これについて私を助けてください。

4

3 に答える 3

7

注:この回答の前半は、v5.7.2 より前の MySQL に適用されます。v5.7.2以降については、@steffenからの以下の回答を参照してください。後半はまだ有効です。複数のトリガーを実装しようとしたときに、OP が同じ名前を使用していました。


BEFORE INSERTトリガーとトリガーを使用できますAFTER INSERT。それはドキュメントにあります。BEFORE INSERTたとえば、トリガーを 2 つ (または 3 つまたは 4 つ) 持つことはできません。

AFTER INSERTトリガーがトリガーを一掃している場合BEFORE INSERT、2 つのトリガーはおそらく同じ名前です。それぞれに固有の名前があることを確認してください。

于 2013-04-26T04:12:01.293 に答える