如果我忘记设置自动增量,我可以在MySQL中后来设置吗?

如果我忘记设置自动增量,我可以在MySQL中后来设置吗?

是的,您可以使用ALTER table以后设置自动增量。让我们先创建一个表。在这里,您可以看到我们没有设置自动增量 –

mysql> create table forgetToSetAutoIncrementDemo
   -> (
   -> StudentId int,
   -> StudentName varchar(30)
   -> );
查询成功,0行受影响(1.17秒)

现在检查表描述,没有自动增加列 –

mysql> desc forgetToSetAutoIncrementDemo;

这将产生以下输出 –

+-------------+-------------+------+-----+---------+-------+
| Field       | Type        | Null | Key | Default | Extra |
+-------------+-------------+------+-----+---------+-------+
| StudentId   | int(11)     | YES  |     | NULL    |       |
| StudentName | varchar(30) | YES  |     | NULL    |       |
+-------------+-------------+------+-----+---------+-------+
2行受影响(0.00秒)

下面是在列StudentId上设置自动增量的查询 –

mysql> alter table forgetToSetAutoIncrementDemo modify column StudentId int NOT NULL
AUTO_INCREMENT PRIMARY KEY;
查询成功,0行受影响(2.12秒)
记录:0 重复:0 警告:0

现在再次检查表描述,自动增加列已成功添加 –

mysql> desc forgetToSetAutoIncrementDemo;

这将产生以下输出 –

+-------------+-------------+------+-----+---------+----------------+
| Field       | Type        | Null | Key | Default | Extra          |
+-------------+-------------+------+-----+---------+----------------+
| StudentId   | int(11)     | NO   | PRI | NULL    | auto_increment |
| StudentName | varchar(30) | YES  |     | NULL    |                |
+-------------+-------------+------+-----+---------+----------------+
2行受影响(0.00秒)

下面是使用insert命令将一些记录插入表的查询 –

mysql> insert into forgetToSetAutoIncrementDemo(StudentName) values('Larry');
查询成功,1行受影响(0.16秒)

mysql> insert into forgetToSetAutoIncrementDemo(StudentName) values('Chris');
查询成功,1行受影响(0.13秒)

mysql> insert into forgetToSetAutoIncrementDemo(StudentName) values('Robert');
查询成功,1行受影响(0.17秒)

下面是使用select语句显示表中所有记录的查询 –

mysql> select * from forgetToSetAutoIncrementDemo;

这将显示StudentID作为自动增量的以下输出 –

+-----------+-------------+
| StudentId | StudentName |
+-----------+-------------+
| 1         | Larry       |
| 2         | Chris       |
| 3         | Robert      |
+-----------+-------------+
3行受影响(0.00秒)

阅读更多:MySQL 教程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程