您可以借助alter命令在MySQL中的现有列上设置主键。
将主键添加到现有列的语法如下。
ALTER TABLE yourTableName ADD PRIMARY KEY(yourColumnName);
要将现有列设置为主键,让我们首先创建一个表。创建表的查询-
mysql> create table AddingPrimaryKeyDemo −> ( −> UniversityId int, −> UniversityName varchar(200) −> );
看上面的查询,我还没有添加主键。让我们借助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); Records: 0 Duplicates: 0 Warnings: 0
现在,我已将primary添加到现有列“ 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”,因此成功添加了主键。