Heim >Datenbank >MySQL-Tutorial >Wie können wir PRIMARY KEY für mehrere Spalten einer vorhandenen MySQL-Tabelle festlegen?

Wie können wir PRIMARY KEY für mehrere Spalten einer vorhandenen MySQL-Tabelle festlegen?

WBOY
WBOYnach vorne
2023-09-11 10:29:151264Durchsuche

我们如何在现有 MySQL 表的多个列上设置 PRIMARY KEY?

Wir können PRIMARY KEY-Einschränkungen für mehrere Spalten einer vorhandenen Tabelle festlegen, indem wir das Schlüsselwort ADD und die Anweisung ALTER TABLE verwenden.

Beispiel

Angenommen, wir haben eine Tabelle „Room_allotment“ wie folgt:

mysql> Create table Room_allotment(Id Int, Name Varchar(20), RoomNo Int);
Query OK, 0 rows affected (0.20 sec)

mysql> Describe Room_allotment;
+--------+-------------+------+-----+---------+-------+
| Field  | Type        | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| Id     | int(11)     | YES  |     | NULL    |       |
| Name   | varchar(20) | YES  |     | NULL    |       |
| RoomNo | int(11)     | YES  |     | NULL    |       |
+--------+-------------+------+-----+---------+-------+
3 rows in set (0.11 sec)

Jetzt können wir mit der folgenden Abfrage einen zusammengesetzten Primärschlüssel für mehrere Spalten „id“ und „Name“ hinzufügen

mysql> Alter Table Room_allotment ADD PRIMARY KEY(Id, Name);
Query OK, 0 rows affected (0.29 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> Describe Room_allotment;
+--------+-------------+------+-----+---------+-------+
| Field  | Type        | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| Id     | int(11)     | NO   | PRI | 0       |       |
| Name   | varchar(20) | NO   | PRI |         |       |
| RoomNo | int(11)     | YES  |     | NULL    |       |
+--------+-------------+------+-----+---------+-------+
3 rows in set (0.12 sec)

Wie oben zu sehen ist Ergebnismenge, PRIMARY KEY wird zu mehreren Spalten hinzugefügt.

Das obige ist der detaillierte Inhalt vonWie können wir PRIMARY KEY für mehrere Spalten einer vorhandenen MySQL-Tabelle festlegen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen