特定表自动递增2(无PHP处理)

时间:2014-01-28 17:08:00

标签: mysql auto-increment

我创建了一个表,我需要为每个条目将自动增量切换为+2。我已经找到了一种方法来实现全球:

 setting auto increment=2
auto increment offset=2

我可以只为一张桌子做这件事吗?

1 个答案:

答案 0 :(得分:0)

auto_increment_offset只会为所有表设置起点,而不是增量。

表定义或alter语句中的AUTO_INCREMENT将设置该单个表的起始auto_increment编号。

您正在寻找的更像是server setting auto_increment_increment。不幸的是,MySQL中的单个表不支持。引用手册:

It is not possible to confine the effects of these two variables to a single table, and thus they do not take the place of the sequences offered by some other database management systems; these variables control the behavior of all AUTO_INCREMENT columns in all tables on the MySQL server.

您可以尝试滚动自己的序列,每次插入此表时都插入一个单独的auto_increment“sequence”表,只需从序列表中获取last_insert_id()并将其乘以2以用于其他表使用