MySQL のトリガーは、特殊なタイプのストアド プロシージャです。これは、事前に定義された操作 (テーブル上で DELETE、UPDATE、または INSERT 操作が実行されるときなど) が発生したときに自動的に実行できるテーブル関連のアクションのセットです。テーブル。 。トリガーは、テーブル上で特別な構文を定義することにより、開発者に柔軟なプログラミング オプションを提供します。この記事では、MySQL でトリガーを作成および削除する方法について説明します。
MySQL トリガーの作成
MySQL でトリガーを作成するには、CREATE TRIGGER ステートメントを使用する必要があります。構文は次のとおりです:
CREATE TRIGGER trigger_name BEFORE|AFTER INSERT|UPDATE|DELETE ON table_name FOR EACH ROW BEGIN -- 触发器执行的操作 END;
CREATE TRIGGER ステートメントは次のとおりです。次のように指定します。
たとえば、次の CREATE TRIGGER ステートメントは、ユーザー テーブルにデータ行が挿入されるときに実行されるトリガーを定義します。
CREATE TRIGGER my_trigger BEFORE INSERT ON user FOR EACH ROW BEGIN INSERT INTO user_log (user_id, action) VALUES (NEW.id, 'inserted'); END;
このトリガーは、INSERT 操作ごとに実行されます。以前に実行された user テーブルに、挿入されたデータ ID と操作の種類 (挿入) を user_log テーブルに挿入します。
MySQL トリガーの削除
MySQL では、トリガーを削除するには DROP TRIGGER ステートメントを使用する必要があります。構文は次のとおりです:
DROP TRIGGER [IF EXISTS] trigger_name;
DROP TRIGGER ステートメントでは、以下:
次は実際的な例です。トリガー my_trigger を削除する場合は、次のステートメントを使用できます:
DROP TRIGGER IF EXISTS my_trigger;
DROP TRIGGER ステートメントでは、IF EXISTS を使用します。削除しようとしているトリガーが実際に存在することを確認するオプション。このオプションを使用しない場合、存在しないトリガーを削除しようとするとエラーが返されます。
概要
MySQL のトリガーは、特定の状況下でアクションを自動的に実行する構成可能な方法です。トリガーは BEFORE または AFTER イベントで実行でき、INSERT、UPDATE、および DELETE 操作に対して異なるトリガーを定義できます。 MySQL トリガーを作成するには CREATE TRIGGER ステートメントを使用する必要があり、トリガーを削除するには DROP TRIGGER ステートメントを使用する必要があります。 MySQL トリガーについて詳しく知りたい場合は、MySQL の公式ドキュメントを参照してください。
以上がMySQL でトリガーを作成および削除する方法を調べるの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。