ホームページ  >  記事  >  データベース  >  MySQL トリガーの関連データを削除する方法: ステップバイステップ ガイド

MySQL トリガーの関連データを削除する方法: ステップバイステップ ガイド

Patricia Arquette
Patricia Arquetteオリジナル
2024-11-03 05:02:30233ブラウズ

How to Delete Related Data in a MySQL Trigger: A Step-by-Step Guide

MySQL トリガー: 削除時に関連テーブルからデータを削除する

データベース テーブルを管理する場合、テーブルの 1 つが変更されるシナリオに遭遇するのが一般的です。テーブルは他の関連テーブルにカスケードする必要があります。この特定のインスタンスでは、当面のタスクは、「patrons」テーブルからレコードを削除すると、「patron_info」テーブル内のそのパトロンに関連付けられた対応する情報も確実に削除されるようにする MySQL トリガーを作成することです。

トリガーの実装

これを実現するには、次のトリガーを定義できます:

<code class="sql">CREATE TRIGGER log_patron_delete AFTER DELETE on patrons
FOR EACH ROW
BEGIN
  DELETE FROM patron_info
  WHERE patron_info.pid = old.id;
END</code>

トリガーの内訳は次のとおりです:

  • log_patron_delete: トリガーの名前。
  • AFTER DELETE: DELETE 操作の後にトリガーが実行されるように指定します。
  • on patrons: トリガーが適用されるテーブルを示します。この場合、これは「パトロン」テーブルです。
  • FOR EACH ROW: 「パトロン」テーブルの削除された行ごとにトリガーが実行されるように指定します。
  • BEGIN: 開始をマークします。トリガー本体の。
  • DELETE FROM patron_info...: 「patron_info」テーブルから関連する行を削除する実際の削除ステートメント。
  • WHERE patron_info.pid = old.id: これ条件では、pid 列の値と、「パトロン」テーブルの削除された行の対応するパトロン ID を照合することによって、削除される特定の行が識別されるようにします。
  • END: トリガー本体の終わりをマークします。

トリガーが適切に実行されるためには、DELETE ステートメントの末尾のセミコロンの正しい位置が重要であることに注意することが重要です。さらに、コンソール ウィンドウでトリガー コードを実行する場合は、構文エラーを防ぐために区切り文字を使用する必要があります。

以上がMySQL トリガーの関連データを削除する方法: ステップバイステップ ガイドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。