我们如何从现有MySQL表的列中删除PRIMARY KEY约束?

我们可以使用DROP关键字和ALTER TABLE语句从现有表的列中删除PRIMARY KEY约束。

示例

假设我们有一个表“ Player”,它对列“ ID”具有PRIMARY KEY约束,如下所示:

mysql> DESCRIBE Player;

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

2 rows in set (0.04 sec)

现在,如果要删除PRIMARY KEY约束,则可以使用ALTER TABLE语句,如下所示:

mysql> alter table Player DROP PRIMARY KEY;
Records: 0  Duplicates: 0  Warnings: 0

mysql> DESCRIBE Player;

+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| ID    |  int(11)  | NO     |     | NULL    |       |
| Name  | varchar(20) | YES  |     | NULL    |       |
+-------+-------------+------+-----+---------+-------+

2 rows in set (0.04 sec)

上面的结果集显示,已删除对列“ ID”的PRIMARY KEY约束。