如何在 MySQL 中将现有列设置为主键?
您可以使用 ALTER 命令在 MySQL 中将现有列设置为主键。
添加主键到现有列的语法如下所示。
ALTER TABLE yourTableName ADD PRIMARY KEY(yourColumnName);
要将现有列设置为主键,让我们首先创建一个表。创建表的查询如下所示:
mysql> create table AddingPrimaryKeyDemo −> ( −> UniversityId int, −> UniversityName varchar(200) −> ); Query OK, 0 rows affected (1.16 sec)
查看上面的查询,我没有添加主键。让我们使用 DESC 命令检查一下。查询如下所示:
mysql> desc AddingPrimaryKeyDemo;
以下是输出结果:
+----------------+--------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +----------------+--------------+------+-----+---------+-------+ | UniversityId | int(11) | YES | | NULL | | | UniversityName | varchar(200) | YES | | NULL | | +----------------+--------------+------+-----+---------+-------+ 2 rows in set (0.09 sec)
现在,您可以使用开头讨论的语法将现有列设置为主键。添加主键的查询如下所示:
mysql> alter table AddingPrimaryKeyDemo add primary key(UniversityId); Query OK, 0 rows affected (1.48 sec) Records: 0 Duplicates: 0 Warnings: 0
现在,我已经将主键添加到现有列“UniversityId”。以下命令将给出结果,该结果将检查列“UniversityId”上是否存在主键。
mysql> desc AddingPrimaryKeyDemo;
以下是输出结果:
+----------------+--------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +----------------+--------------+------+-----+---------+-------+ | UniversityId | int(11) | NO | PRI | NULL | | | UniversityName | varchar(200) | YES | | NULL | | +----------------+--------------+------+-----+---------+-------+ 2 rows in set (0.04 sec)
我们在上面看到了“PRI”,因此主键已成功添加。
广告