从最大值(列)重置自动增量

时间:2018-04-12 12:53:06

标签: mysql sql

我试图重置我的主键,因此它不会离开"空洞"在里面。 我发现了这个功能:

ALTER TABLE table AUTO_INCREMENT = 0

将auto_increment列重置为起始点,因此下一个字段将具有" 1",如果它是

ALTER TABLE table AUTO_INCREMENT = 1

下一个字段会有" 2"在它。

我试图让它成为AUTO_INCREMENT = 1之后的数字从自动增量的列中获取最高值。

ALTER TABLE table AUTO_INCREMENT = MAX(column)

但是它告诉我它的语法错误,有人可以给我一个如何让它工作的建议吗? 提前谢谢!

1 个答案:

答案 0 :(得分:0)

- 你可以试试这个,但是如果它是自动的,那么表中的密钥怎么会丢失?

DECLARE @MaxColumn INT

SELECT @MaxColumn = MAX(ID)
FROM TAbleName

ALTER TABLE table AUTO_INCREMENT = @MaxColumn