我有像test这样的表。有像id,name这样的字段。我不想给id增加自动增量。所以我如何给id增加?
我可以从表中获取max(id),并将+1从该数字中取出并分配该ID
但问题是,有一千条记录正在插入一秒钟,那我怎么能克服这个问题呢?
任何帮助都将得到满足
答案 0 :(得分:0)
创建第二个表格,例如id_generator
字段为id
(作为id),table_name
(字符串)和value
(整数)。 table_name
包含您使用值的tabe的名称,在您的情况下为test
。 value
会将您的ID列的当前最大值存储在test
表格中,例如+1。如果talbe测试中的最大id为1000,则id_generator中的值为1001。
每当您在test
表中插入新值时,您从id_genrator
获取值,将其用作插入test
的ID,将值递增并将其存储回id_generator
。 1}}表。
通过这种方式,您可以实施自己的"自动增量"对于ids。使用一个附加表,可以在存储当前最大id分隔时加快提取速度。