9

我只希望我的 mysql 表 id(主键)从 0..

正如我所看到的,我使用了 ALTER TABLE yourtable AUTO_INCREMENT =0 但它从 1 开始......我需要做什么?

编辑1

我还用 truncate 选项清空了我的表

4

2 回答 2

18
SET [GLOBAL|SESSION] sql_mode='NO_AUTO_VALUE_ON_ZERO'

NO_AUTO_VALUE_ON_ZERO 影响 AUTO_INCREMENT 列的处理。通常,您通过在其中插入 NULL 或 0 来为该列生成下一个序列号。NO_AUTO_VALUE_ON_ZERO 将这种行为抑制为 0,以便只有 NULL 生成下一个序列号。

如果 0 已存储在表的 AUTO_INCREMENT 列中,则此模式很有用。(顺便说一句,不推荐存储 0。)

参考

参考文献 2

于 2013-04-26T08:59:42.317 回答
4

您不能将其强制为零。这受auto_increment_offset服务器变量的限制。默认值为 1,范围为 [1 .. 65535]。

更多信息:auto_increment_offset如何设置 AUTO_INCREMENT step

于 2013-04-26T09:09:30.337 回答