ホームページ >データベース >mysql チュートリアル >MySQL の外部キー制約のデフォルトの ON DELETE 動作は何ですか?

MySQL の外部キー制約のデフォルトの ON DELETE 動作は何ですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-11-04 17:30:02817ブラウズ

What is the Default ON DELETE Behavior of Foreign Key Constraints in MySQL?

MySQL 外部キー制約: デフォルトの ON DELETE 動作の説明

MySQL データベースを使用する場合、データの整合性を確保するには外部キー制約の管理が不可欠です。 。外部キー関係の基本的な側面の 1 つは、対応する親行が削除されたときに子行に何が起こるかを決定する ON DELETE 動作です。

デフォルトの ON DELETE 動作: 説明

デフォルトでは、MySQL は ON DELETE 動作を NO ACTION として割り当てます。これは、外部キー関係が壊れる場合、親行の削除が禁止されることを意味します。つまり、子行は有効な親行を参照し続ける必要があります。

その他の ON DELETE オプション

デフォルトの動作のほかに、他に 4 つの ON DELETE オプションがあります。 available:

  • SET NULL: 親行が削除されたときに、子テーブルの外部キー列を NULL にします。これは、外部キー列が NULL 可能である場合にのみ許可されます。
  • RESTRICT: このオプションは NO ACTION と同義で、子行に影響を与える場合に親行の削除を禁止します。
  • CASCADE: 削除された親行を参照するすべての子行を自動的に削除します。
  • SET DEFAULT: このオプションは MySQL ではサポートされていないため、使用しないでください。

概要

要約すると、MySQL のデフォルトの ON DELETE 動作は NO ACTION/RESTRICT であり、これにより、親行の削除が防止されます。外部キー制約を無効にします。その他のオプションには、SET NULL、CASCADE (子行を自動的に削除するため)、SET DEFAULT (MySQL ではサポートされていません) などがあります。

以上がMySQL の外部キー制約のデフォルトの ON DELETE 動作は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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