主キーとは何ですか? 主キーは、テーブル内の各タプル (行) を一意に識別するテーブル内の列です。主キーはテーブルに整合性制約を適用します。テーブル内で許可される主キーは 1 つだけです。主キーは重複値や null 値を受け入れません。テーブル内の主キーの値はほとんど変更されないため、主キーを選択する際には注意し、ほとんど変更されないものを選択する必要があります。あるテーブルの主キーは、別のテーブルの外部キーによって参照できます。 主キーをよりよく理解するために、roll_number、name、batch、phone_number、citizen_id などの属性を持つ Student というテーブルを作成しましょう。 上記の例では、各大学に在籍する学生には固有の Roll_number があるため、roll_number 属性が同じ NULL 値を持つことは決してありません。したがって、2 人の学生が同じ Roll_number を持つことはできず、テーブル内の各行は学生の roll_number 属性によって一意に識別できます。したがって、この場合は、Roll_number 属性を主キーとして設定できます。 ユニークキーとは何ですか? 一意キー制約は、リレーションまたはテーブル内の単一のタプルを一意に識別します。主キーとは異なり、テーブルには複数の一意のキーを設定できます。一意キー制約は、列に対して 1 つの NULL 値のみを受け入れることができます。一意制約は、別のテーブルの外部キーによっても参照されます。主キーではない列および列のグループに一意の制約を適用する場合に使用できます。 一意のキーをよりよく理解するために、Roll_number、Name、Batch、Phone_number、Citizen_ID 属性を持つ Student テーブルを使用します。Roll_number 属性には主キーが指定されています。 この例では、国のすべての国民が固有の識別番号を持つ必要があるため、Citizen_ID 列の各エントリは一意で重複しない必要があるという一意の制約を Citizen_ID に割り当てることができます。ただし、学生が別の国から移住した場合、その学生には Citizen_ID がなく、一意の制約で NULL が 1 つ許可されるため、エントリには NULL 値が含まれる可能性があります。 主キーと一意キーの主な違い: 1. 属性が主キーとして宣言されている場合、NULL 値は受け入れられません。一方、プロパティが Unique として宣言されている場合は、 NULL 値を受け入れることができます。 2. テーブルには主キーを 1 つしか設定できませんが、一意のキーは複数設定できます。 3. 主キーを定義するときにクラスター化インデックスを自動的に作成します。対照的に、一意キーは非クラスター化インデックスを生成します。 以上がMysqlの主キーとユニークキーの違いについての説明です。123WORDPRESS.COMをご利用いただき、ありがとうございます。 以下もご興味があるかもしれません:
|
<<: vue-router 履歴モード サーバー側設定プロセス記録
>>: LinuxにPHP7をインストールする方法の詳細な説明
ネットワークポートの公開実際、Docker にはネットワーク ポートの公開に関わる 2 つのパラメー...
目次1. このキーワード2. カスタム属性3. 包括的なケース1:タブの実装付録要約する1. このキ...
会社のウェブサイトのアクセス数が増えてくると(1日10万PV以上)、当然MySQLがボトルネックにな...
1. これは理解するのが少し複雑なので、原理を注意深く読んで自分で入力していただければ幸いです。 &...
少し前にTik Tokを見ていて、フォローするときのボタンアニメーションがとても美しいと思ったのと、...
1. 全体的な手順冒頭で、RabbitMQ サービスをインストールして実行する方法を紹介しましたが、...
この記事では主に、MySQL でテーブルを削除する 3 つの操作、つまり delete ステートメン...
目次1. デカルト積現象2. 接続クエリの知識ポイントのまとめ1) 結合クエリとは何ですか? 2) ...
この記事では、Docker を使用して MySQL をデプロイし、データを保持する方法について簡単に...
背景少し前にブラウザカメラの取得とスキャンコード認識の機能を作りました。その際の知識ポイントと具体的...
1. プロジェクト文書 2. ページレイアウトにHTMLとCSSを使用するHTML部分 <di...
1.docker search mysql查看mysql版本 2. docker pull mysq...
目次開発の際には、機能を段階的に分析して実装することで、明確な考え方を保つことができます。 1. フ...
通常、私たちが構築する Docker イメージはサイズが大きく、多くのディスク領域を占有します。コン...
Mac OS X で TAR.GZ から MySQL 5.7 をインストールする MySQL 5.6...