mysqlに複合主キーを追加するにはどうすればよいですか?

青灯夜游
リリース: 2020-09-16 15:10:27
オリジナル
17660 人が閲覧しました

mysql では、テーブルを作成するときに複合主キーを追加できます。構文規則は「PRIMARY KEY [フィールド 1, フィールド 2,..., フィールド n]」です。これは、主キーを意味します。複数のフィールドで構成されます。

mysqlに複合主キーを追加するにはどうすればよいですか?

主キー制約は、テーブル内のデータの各行の識別子を一意に決定するためにテーブル内の主キーを定義します。主キーは、テーブル内の特定の列または複数の列の組み合わせにすることができ、複数の列で構成される主キーは複合主キーと呼ばれます。

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

複合主キーを追加するにはどうすればよいですか?

テーブルの作成時に複合主キーを追加できます。このとき、主キーは複数のフィールドで構成されます。構文規則は次のとおりです:

PRIMARY KEY [字段1,字段2,…,字段n]
ログイン後にコピー

例:主キー ID がないと仮定して、データ テーブル tb_emp を作成します。従業員を一意に識別するために、name と deptId を主キーとして組み合わせることができます

mysql> CREATE TABLE tb_emp
    -> (
    -> name VARCHAR(25),
    -> deptId INT(11),
    -> salary FLOAT,
    -> PRIMARY KEY(id,deptId)
    -> );
Query OK, 0 rows affected (0.37 sec)
mysql> DESC tb_emp;
+--------+-------------+------+-----+---------+-------+
| Field  | Type        | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| name   | varchar(25) | NO   | PRI | NULL    |       |
| deptId | int(11)     | NO   | PRI | NULL    |       |
| salary | float       | YES  |     | NULL    |       |
+--------+-------------+------+-----+---------+-------+
3 rows in set (0.14 sec)
ログイン後にコピー

以上がmysqlに複合主キーを追加するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート