ホームページ >よくある問題 >外部キーとは何ですか

外部キーとは何ですか

王林
王林オリジナル
2020-11-26 14:35:158439ブラウズ

外部キーはキーワードです。共通キーがリレーションシップの主キーである場合、その共通キーは別のリレーションシップの外部キーと呼ばれます。外部キーは、2 つの関係間の関連リンクを表します。外部キーはデータの一貫性と整合性を維持できます。その主な目的は、外部キー テーブルに格納されているデータを制御することです。

外部キーとは何ですか

外部キーの紹介:

公開キーがリレーションシップの主キーである場合、公開キーは と呼ばれます。別の関係への外部キー。外部キーは 2 つの関係間の関連リンクを表していることがわかります。別のリレーションシップの外部キーを主キーとするテーブルをマスターテーブル、外部キーを持つテーブルをマスターテーブルのスレーブテーブルと呼びます。外部キーは外部キーワードとも呼ばれます。

(学習ビデオ共有: mysql ビデオ チュートリアル)

機能:

データの一貫性と整合性を維持します。主な目的は、データのストレージを制御することです。テーブル内の外部キー データ。 2 つのテーブルを関連付けるには、外部キーはテーブル内の列の値を参照するか、NULL 値を使用することしかできません。

実行の防止

  • テーブルから新しい行を挿入します。外部キーの値がメイン テーブルの主キーの値ではない場合、挿入を防止します。

  • スレーブ テーブルの外部キー値を変更します。新しい値がマスター テーブルの主キー値ではない場合、変更はブロックされます。

  • マスター テーブルから行を削除すると、その主キー値がスレーブ テーブルに存在します。削除を防止します (削除したい場合は、まずスレーブ テーブルから関連する行を削除する必要があります);

  • #マスター テーブルは主キーの値を変更します。古い値がスレーブ テーブルに存在する場合、変更が妨げられます (変更したい場合)。最初にテーブルの関連する行を変更する必要があります。削除されました)。

カスケード実行

  • メインテーブルから行を削除し、テーブルから関連する行をまとめて削除します;

  • メインテーブルの主キー値を変更し、スレーブテーブルの関連行の外部キー値をまとめて変更します。ユーザーが選択できる 2 つの方法が提供されています。どの方法を選択しても、テーブルに余分な行は存在しません。別の観点から見ると、スレーブ テーブルとマスター テーブルのフラグの不一致を拒否して、マスター テーブルのフラグとの整合性を確保することで、同じことが実現されます。

関連する推奨事項: mysql チュートリアル

以上が外部キーとは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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