要将主键更改为auto_increment,可以使用MODIFY命令。让我们首先创建一个表。mysql> create table changePrimaryKeyInAutoIncrement
-> (
-> StudentId int not null primary key,
-> StudentName varchar(100),
-> StudentAge int,
-> StudentAddress varchar(100)
-> );
现在让我们使用desc命令检查表的描述:mysql> desc changePrimaryKeyInAutoIncrement;
这将产生以下输出+----------------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------------+--------------+------+-----+---------+-------+
| StudentId | int(11) | NO | PRI | NULL | |
| StudentName | varchar(100) | YES | | NULL | |
| StudentAge | int(11) | YES | | NULL | |
| StudentAddress | varchar(100) | YES | | NULL | |
+----------------+--------------+------+-----+---------+-------+
4 rows in set (0.00 sec)
看上面的示例输出,StudentId列是主键。现在让我们将主键更改为auto_increment:mysql> alter table changePrimaryKeyInAutoIncrement MODIFY StudentId INT AUTO_INCREMENT;
Records: 0 Duplicates: 0 Warnings: 0
让我们再次检查表的描述:mysql> desc changePrimaryKeyInAutoIncrement;
这将产生以下输出+----------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------------+--------------+------+-----+---------+----------------+
| StudentId | int(11) | NO | PRI | NULL | auto_increment |
| StudentName | varchar(100) | YES | | NULL | |
| StudentAge | int(11) | YES | | NULL | |
| StudentAddress | varchar(100) | YES | | NULL | |
+----------------+--------------+------+-----+---------+----------------+
4 rows in set (0.00 sec)
查看上面的示例输出,StudentId列已更改为auto_increment。