在 MySQL 中删除主键?
mysqlmysqli database
要在 MySQL 中删除主键,请使用 drop primary key 命令。为了理解这个概念,让我们创建一个以列为主键的表。
mysql> create table PrimaryKeyDemo -> ( -> id int not null, -> Primary key(id) -> ); Query OK, 0 rows affected (0.60 sec)
让我们借助 DESC 命令检查表的描述。查询如下。
mysql> desc PrimaryKeyDemo;
以下是输出。
+-------+---------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+---------+------+-----+---------+-------+ | id | int(11) | NO | PRI | NULL | | +-------+---------+------+-----+---------+-------+ 1 row in set (0.06 sec)
查看上面的输出,有一个列"Key",其中包含 PRI 关键字。这本身就表明"id"列是主键。现在,让我们借助 ALTER 和 DROP 命令删除主键。查询如下。
mysql> alter table PrimaryKeyDemo drop primary key; Query OK, 0 rows affected (1.70 sec) Records: 0 Duplicates: 0 Warnings: 0
现在让我们检查主键是否被成功删除。
mysql> DESC PrimaryKeyDemo;
以下是现在不会显示主键的输出,因为我们已在上面删除了它。
+-------+---------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+---------+------+-----+---------+-------+ | id | int(11) | NO | | NULL | | +-------+---------+------+-----+---------+-------+ 1 row in set (0.00 sec)