Heim > Datenbank > MySQL-Tutorial > Wie lege ich PRIMARY KEY auf mehrere Spalten einer MySQL-Tabelle fest?

Wie lege ich PRIMARY KEY auf mehrere Spalten einer MySQL-Tabelle fest?

PHPz
Freigeben: 2023-08-29 11:37:02
nach vorne
1411 Leute haben es durchsucht

如何在 MySQL 表的多个列上设置 PRIMARY KEY?

Tatsächlich erlaubt uns MySQL, PRIMARY KEY für mehrere Spalten festzulegen. Dies hat den Vorteil, dass wir mehrere Spalten als eine Einheit verarbeiten können.

Beispiel

Wir erstellen eine Tabellenverteilung, indem wir einen zusammengesetzten Primärschlüssel für mehrere Spalten definieren, wie unten gezeigt -

mysql> Create table allotment(
   RollNo Int, Name Varchar(20), RoomNo Int, PRIMARY KEY(RollNo, RoomNo));
Query OK, 0 rows affected (0.23 sec)

mysql> Describe allotment;

+--------+-------------+------+-----+---------+-------+
| Field  | Type        | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| RollNo | int(11)     | NO   | PRI | 0       |       |
| Name   | varchar(20) | YES  |     | NULL    |       |
| RoomNo | int(11)     | NO   | PRI | 0       |       |
+--------+-------------+------+-----+---------+-------+

3 rows in set (0.10 sec)
Nach dem Login kopieren

Wenn wir nun versuchen, doppelte zusammengesetzte Werte in zwei Spalten einzufügen, gibt MySQL den folgenden Fehler aus -

mysql> Insert Into allotment values(1, 'Aarav', 201),(2,'Harshit',201),(1,'Rahul ',201);
ERROR 1062 (23000): Duplicate entry '1-201' for key 'PRIMARY'
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie lege ich PRIMARY KEY auf mehrere Spalten einer MySQL-Tabelle fest?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:tutorialspoint.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage