主キーとは何ですか? 主キーは、テーブル内の各タプル (行) を一意に識別するテーブル内の列です。主キーはテーブルに整合性制約を適用します。テーブル内で許可される主キーは 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をインストールする方法の詳細な説明
単一の MYSQL サーバーが現在の Web サイトのトラフィックに対応できない場合の最適化ソリュー...
目次1. 基本的な使い方とロジック2. 特徴3. エラーオブジェクト4. キャッチアンドスロー戦略の...
React は Facebook の社内プロジェクトとして始まりました。 React の出現は革命的...
Ubuntu では、ショートカット キーでタッチパッドをオフにできない状況によく遭遇します。この問題...
ブラウザのウェブページを最適化するためのいくつかのルールページの最適化静的リソース圧縮ビルド ツール...
日常業務では、ログを表示する必要がよくあります。たとえば、 tail コマンドを使用してログをリアル...
1. 公式サイトを参照してdockerをインストールする2. MySQLイメージをプルします(デフォ...
JS でアニメーションを記述する場合、移動前に相対位置を絶対位置に変換してからアニメーション機能を実...
設定ファイルを書いてMyBatisを簡単に使う方法マイバティス3.xここでは MyBatis につい...
目次概要1. コンポジションAPI 1. ref と reactive の違いは何ですか? 2. 周...
序文Ahhang が Springboot プロジェクトを開発していたとき、フロントエンドから検証コ...
1. イメージをプルするまず、次のコマンドを実行して、イメージをローカル コンピューターにダウンロー...
コンテンツ属性は通常、::before および ::after 疑似要素で使用され、疑似要素のコンテ...
*** ハイパーリンクのスタイル設定の例a:link クリックされる前のハイパーリンクの状態a:vi...
序文最近、仕事でAES_ENCRYPT()関数を使用してプレーンテキストを暗号化し、MySQL に保...