ホームページ  >  記事  >  データベース  >  主キーはmysql内で一意ですか?

主キーはmysql内で一意ですか?

青灯夜游
青灯夜游オリジナル
2022-11-11 16:16:156512ブラウズ

主キーは一意です。データベースの主キーはすべて一意です。逆に、テーブルの特定のフィールドを主キーとして設定する場合は、フィールド内のデータが一意である必要があります。これは必須の条件です。主キー値はテーブル内の各行を一意に識別でき、それによってテーブルのエンティティ整合性を強制できます。主キーの役割はデータの一意性を決定することであり、主に他のテーブルとの外部キーの関連付けに使用されます。およびこの記録の変更と削除を識別するため。

主キーはmysql内で一意ですか?

このチュートリアルの動作環境: Windows7 システム、mysql8 バージョン、Dell G3 コンピューター。

データベースの主キーはすべて一意です。一方、テーブルの特定のフィールドを主キーに設定する場合、フィールド内のデータは一意である必要があります。これは必須の条件です。

mysql の主キー

主キー (PRIMARY KEY) の正式名称は「主キー制約」です。 MySQL で頻繁に使用される制約。通常の状況では、DBMS がテーブル内のレコードをより速く検索できるようにするために、テーブルに主キーが設定されます。

主キーは、単一フィールドの主キーと複数フィールドの結合主キーに分かれており、このセクションでは、これら 2 つの主キー制約の作成、変更、削除についてそれぞれ説明します。

主キーを使用する場合は、次の点に注意する必要があります。

  • 各テーブルには、主キーを 1 つだけ定義できます。

  • 主キー値はテーブル内の各行を一意に識別する必要があり、NULL にすることはできません。つまり、テーブル内に同じ主キー値を持つデータ行が 2 つ存在することはできません。これが一意性の原則です。

  • #フィールド名は、結合主キー フィールド テーブルに 1 回だけ出現できます。

  • 結合主キーには、不必要な冗長フィールドを含めることはできません。結合主キーのフィールドが削除されたときに、残りのフィールドで構成される主キーがまだ一意性の原則を満たしている場合、結合主キーは正しくありません。これが最小化の原理です。

#テーブル変更時に主キー制約を追加する主キー制約は、テーブルの作成時に作成できるだけではありません。 、ただし、テーブルを変更するときにも追加されます。ただし、主キー制約として設定されたフィールドでは null 値は許可されないことに注意してください。

データ テーブルを変更するときに主キー制約を追加するための構文形式は次のとおりです:

ALTER TABLE <数据表名> ADD PRIMARY KEY(<字段名>);
tb_emp2 データ テーブルのテーブル構造を表示します。SQL ステートメントと実行結果は以下の通り。

DESC tb_emp2;

主キーはmysql内で一意ですか?

例:


データ テーブル tb_emp2 を変更し、フィールド ID を主キーとして設定する SQL ステートメントそして実行結果は以下の通り。

ALTER TABLE tb_emp2 ADD PRIMARY KEY(id);

主キーはmysql内で一意ですか?通常、テーブルを変更するときにテーブル内のフィールドの主キー制約を設定する場合は、フィールドの値が主キー制約には、Repeat を指定することはできず、空でないことが保証されます。そうしないと、主キー制約を設定できません。

主キー制約の削除主キー制約がテーブルに不要な場合は、テーブルから削除する必要があります。主キー制約は、作成するよりも削除する方がはるかに簡単です。

主キー制約を削除するための構文形式は次のとおりです。

ALTER TABLE <数据表名> DROP PRIMARY KEY;

例:

主キー制約、SQL ステートメント、および実行結果を削除します。 tb_emp2 テーブルは次のようになります。

ALTER TABLE tb_emp2 DROP PRIMARY KEY;

主キーはmysql内で一意ですか?テーブル内に存在できる主キー制約は 1 つだけであるため、主キー名を指定せずにテーブル内の主キー制約を削除できます。

[関連する推奨事項:

mysql ビデオ チュートリアル

]

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

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