如何在mysql的表中为id而不自动增量提供增量?

时间:2014-05-19 09:02:41

标签: mysql

我有像test这样的表。有像id,name这样的字段。我不想给id增加自动增量。所以我如何给id增加?
我可以从表中获取max(id),并将+1从该数字中取出并分配该ID 但问题是,有一千条记录正在插入一秒钟,那我怎么能克服这个问题呢? 任何帮助都将得到满足

1 个答案:

答案 0 :(得分:0)

创建第二个表格,例如id_generator字段为id(作为id),table_name(字符串)和value(整数)。 table_name包含您使用值的tabe的名称,在您的情况下为testvalue会将您的ID列的当前最大值存储在test表格中,例如+1。如果talbe测试中的最大id为1000,则id_generator中的值为1001。 每当您在test表中插入新值时,您从id_genrator获取值,将其用作插入test的ID,将值递增并将其存储回id_generator。 1}}表。

通过这种方式,您可以实施自己的"自动增量"对于ids。使用一个附加表,可以在存储当前最大id分隔时加快提取速度。