ホームページ >データベース >mysql チュートリアル >主キーはmysql内で一意ですか?
主キーは一意です。データベースの主キーはすべて一意です。逆に、テーブルの特定のフィールドを主キーとして設定する場合は、フィールド内のデータが一意である必要があります。これは必須の条件です。主キー値はテーブル内の各行を一意に識別でき、それによってテーブルのエンティティ整合性を強制できます。主キーの役割はデータの一意性を決定することであり、主に他のテーブルとの外部キーの関連付けに使用されます。およびこの記録の変更と削除を識別するため。
このチュートリアルの動作環境: Windows7 システム、mysql8 バージョン、Dell G3 コンピューター。
データベースの主キーはすべて一意です。一方、テーブルの特定のフィールドを主キーに設定する場合、フィールド内のデータは一意である必要があります。これは必須の条件です。
mysql の主キー
主キー (PRIMARY KEY) の正式名称は「主キー制約」です。 MySQL で頻繁に使用される制約。通常の状況では、DBMS がテーブル内のレコードをより速く検索できるようにするために、テーブルに主キーが設定されます。
主キーは、単一フィールドの主キーと複数フィールドの結合主キーに分かれており、このセクションでは、これら 2 つの主キー制約の作成、変更、削除についてそれぞれ説明します。
主キーを使用する場合は、次の点に注意する必要があります。
各テーブルには、主キーを 1 つだけ定義できます。
主キー値はテーブル内の各行を一意に識別する必要があり、NULL にすることはできません。つまり、テーブル内に同じ主キー値を持つデータ行が 2 つ存在することはできません。これが一意性の原則です。
#テーブル変更時に主キー制約を追加する主キー制約は、テーブルの作成時に作成できるだけではありません。 、ただし、テーブルを変更するときにも追加されます。ただし、主キー制約として設定されたフィールドでは null 値は許可されないことに注意してください。
データ テーブルを変更するときに主キー制約を追加するための構文形式は次のとおりです:ALTER TABLE <数据表名> ADD PRIMARY KEY(<字段名>);
tb_emp2 データ テーブルのテーブル構造を表示します。SQL ステートメントと実行結果は以下の通り。
DESC tb_emp2;例:
データ テーブル tb_emp2 を変更し、フィールド ID を主キーとして設定する SQL ステートメントそして実行結果は以下の通り。
ALTER TABLE tb_emp2 ADD PRIMARY KEY(id);
通常、テーブルを変更するときにテーブル内のフィールドの主キー制約を設定する場合は、フィールドの値が主キー制約には、Repeat を指定することはできず、空でないことが保証されます。そうしないと、主キー制約を設定できません。
主キー制約の削除主キー制約がテーブルに不要な場合は、テーブルから削除する必要があります。主キー制約は、作成するよりも削除する方がはるかに簡単です。
主キー制約を削除するための構文形式は次のとおりです。
ALTER TABLE <数据表名> DROP PRIMARY KEY;例:
主キー制約、SQL ステートメント、および実行結果を削除します。 tb_emp2 テーブルは次のようになります。
ALTER TABLE tb_emp2 DROP PRIMARY KEY;
テーブル内に存在できる主キー制約は 1 つだけであるため、主キー名を指定せずにテーブル内の主キー制約を削除できます。
[関連する推奨事項:
mysql ビデオ チュートリアル以上が主キーはmysql内で一意ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。