ホームページ  >  記事  >  毎日のプログラミング  >  mysqlの主キーと外部キーの違いは何ですか

mysqlの主キーと外部キーの違いは何ですか

下次还敢
下次还敢オリジナル
2024-04-27 02:45:22923ブラウズ

主キーと外部キーの違い: 機能: 主キーはレコードを一意に識別し、外部キーは異なるテーブル内のレコードを関連付けます。一意性: 主キーは一意であり、重複は許可されません。外部キーは一意ではないため、繰り返すことができます。 NULL 値: NULL 値は主キーには許可されませんが、NULL 値は外部キーに許可されます。関係: 主キーはテーブル内の関係であり、外部キーはテーブル間の関係です。制約: 主キーには非 null および一意の制約があり、外部キーにはメイン テーブルの主キーを参照する制約があります。数量: 各テーブルは主キーを 1 つだけ持つことができ、テーブルには複数の外部キーを持つことができます。

mysqlの主キーと外部キーの違いは何ですか

#MySQL の主キーと外部キーの違い

#主キー

各テーブル内の各レコードを一意に識別する列のセット
  • 空にすることはできません (非 null 制約)
  • 繰り返しはできません (一意制約)
  • MySQL では、各テーブルに主キーを 1 つだけ持つことができます。
外部キー

主キーに対応する 1 つまたは複数の列別のテーブルのグループ列
  • 外部キー列はメイン テーブルに存在する主キーを参照する必要があります
  • 外部キー列は空でも構いません (NULL 値は許可されます)
  • MySQL では、テーブルに複数の外部キーを持つことができます
具体的な違い

特徴関数一意性Null 値リレーションシップ#制約 #null 以外の一意の #テーブルごとに 1 つだけ##例
主キー 外部キー キー
レコードを一意に識別します Associates異なるテーブルの関連レコード
#一意、重複は許可されない 一意ではない、重複は許可される
許可されません 許可
テーブル内のアソシエーション アソシエーションテーブル間
#メイン テーブルの主キーを参照 数量
1 つのテーブルには複数の

主キーの例: 主キーが「user_id」列である「Users」という名前のテーブル。各レコードには、ユーザーを識別するために使用できる一意の「user_id」があります。

  • 外部キーの例: 外部キーが「user_id」列である「Orders」という名前のテーブル。このキーは、「Users」テーブルの「user_id」主キーを参照し、各注文が特定のユーザーに関連付けられていることを示します。
  • 関数

主キー: テーブル内のレコードの一意性を確保し、データ取得速度を最適化します。

  • 外部キー: テーブル間の関係を確立し、データの整合性を維持し、孤立したレコードを防ぎます。

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

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