如何在MySQL中设置AUTO_INCREMENT总是等于MAX(ID)+ 1不是手动?

时间:2018-01-26 20:20:42

标签: mysql auto-increment

如果我们从MySQL表中删除行,并且如果存在一些自动增量列,则插入后将按最后一个值继续递增。也就是说,如果最后一个值为1000,删除后,增量值将为1001。

但是,如果我希望它在每次插入之前根据max id递增该列(例如id)。我知道可以通过设置:

来实现
public class MyClass {
    private int count;
    private List<MyOtherClass> values;

    get*()
    set(*)
}

public class MyOtherClass {

    private String id;
    private String title;
    private String type;

    get*()
    set(*)
}

手动,但每次删除后或插入前都应调用此sql。

在MySQL表中我只是插入元素并将它们提取到ALTER TABLE `tableName` AUTO_INCREMENT = MAX(`ID`) + 1 ,我只需要按照一定的间隔获取数据。 获得相应的id要远远超过限制。

e.g。

java.util.List

快得多
SELECT * FROM `TABLE_NAME` WHERE ID >=START AND ID <=END

获得表格的大小比SELECT * FROM `TABLE_NAME` LIMIT START, (END-START)

更快MAX(ID)

修改
关于删除,我只删除表末尾的行或其他来自应删除的id(包括)的行,以便在删除后COUNT(*)MAX(ID)相等。

问题是:有没有办法在MySQL中设置“自动”顺序AUTO_INCREMENT?

0 个答案:

没有答案