Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Cách thiết lập PRIMARY KEY cho nhiều cột trên bảng MySQL hiện có

Dùng ALTER TABLE ... ADD PRIMARY KEY để thêm khóa chính tổ hợp.

Ví dụ

Bảng Room_allotment ban đầu không có khóa chính:

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    |       |
+--------+-------------+------+-----+---------+-------+

Thêm PRIMARY KEY tổ hợp trên Id và Name:

mysql> ALTER TABLE Room_allotment ADD PRIMARY KEY(Id, Name);
Query OK, 0 rows affected (0.29 sec)

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    |       |
+--------+-------------+------+-----+---------+-------+

Hai cột Id và Name giờ đều có Key = PRI.