我想创建一个在插入新行时将自动递增的列。
该表已经有数据,并且该数据不需要接收该索引,也可以为NULL。从现在开始,我只是想开始增加。

它看起来很简单,但是我在Workbench中运行:

ALTER TABLE `serra`.`acionamento`
ADD COLUMN `indice` INT NULL AUTO_INCREMENT AFTER `date_insercao`


...它说


  表定义不正确;只能有一个自动列,并且必须将其定义为键


该列真的需要作为主键吗?

最佳答案

我找到了我想要的解决方案...

我缺少UNIQUE配置...

ALTER TABLE `serra`.`acionamento`
ADD COLUMN `indice` INT NOT NULL AUTO_INCREMENT AFTER `column`,
ADD UNIQUE INDEX `indice_UNIQUE` (`indice` ASC);


感谢您的评论

10-08 20:19