MySQL表添加自增列

mysql> create table zc_test2(id int);
Query OK, 0 rows affected (1.37 sec)

mysql> insert into zc_test2 values (10),(9),(8),(7),(6);
Query OK, 5 rows affected (0.04 sec)
Records: 5  Duplicates: 0  Warnings: 0

mysql> select * from zc_test2;
+------+
| id   |
+------+
|   10 |
|    9 |
|    8 |
|    7 |
|    6 |
+------+
5 rows in set (0.00 sec)

mysql> ALTER TABLE zc_test2 add id2 int;
Query OK, 0 rows affected (2.84 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> select * from zc_test2;
+------+------+
| id   | id2  |
+------+------+
|   10 | NULL |
|    9 | NULL |
|    8 | NULL |
|    7 | NULL |
|    6 | NULL |
+------+------+
5 rows in set (0.00 sec)

mysql> alter table zc_test2 change id2 id2 int NOT NULL AUTO_INCREMENT;
ERROR 1075 (42000): Incorrect table definition; there can be only one auto column and it must be defined as a key

mysql> alter table zc_test2 change id2 id2 int NOT NULL AUTO_INCREMENT primary key;
Query OK, 5 rows affected (1.34 sec)
Records: 5  Duplicates: 0  Warnings: 0

mysql> select * from zc_test2;
+------+-----+
| id   | id2 |
+------+-----+
|   10 |   1 |
|    9 |   2 |
|    8 |   3 |
|    7 |   4 |
|    6 |   5 |
+------+-----+
5 rows in set (0.00 sec)
原文地址:https://www.cnblogs.com/zc_0101/p/9155631.html