Computer >> Máy Tính >  >> Lập trình >> MySQL

Làm cách nào chúng ta có thể đặt KHÓA CHÍNH trên nhiều cột của bảng MySQL hiện có?

Chúng ta có thể đặt ràng buộc CHÍNH CHÍNH trên nhiều cột của bảng hiện có bằng cách sử dụng từ khóa ADD cùng với câu lệnh ALTER TABLE.

Ví dụ

Giả sử chúng ta có một bảng ‘Room_allotment’ như sau -

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)

Bây giờ chúng ta có thể thêm KHÓA CHÍNH tổng hợp trên nhiều cột, 'id' và 'Tên', với truy vấn sau

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)

Từ tập kết quả trên có thể thấy rằng PRIMARY KEY đã được thêm vào nhiều cột.