我有一个表来制作临时 id`s 。当我删除表中的所有行时,该表的自动增量值将重置为 0。但我不想重置自动增量。
我能做些什么?
Compare 截断表 http://dev.mysql.com/doc/refman/5.5/en/truncate-table.html:
任何 AUTO_INCRMENT 值都会重置为其起始值。这是真实的
即使对于通常不重用序列的 MyISAM 和 InnoDB
价值观。
... 和删除自 http://dev.mysql.com/doc/refman/5.5/en/delete.html:
如果删除包含最大值的行
AUTO_INCRMENT 列,该值不会重复用于 MyISAM 或 InnoDB
桌子。如果使用 DELETE FROM tbl_name 删除表中的所有行
(没有 WHERE 子句)在自动提交模式下,序列重新开始
适用于除 InnoDB 和 MyISAM 之外的所有存储引擎。有一些
InnoDB 表的此行为有例外,如第 1 节中所述
13.3.5.3,“InnoDB 中的 AUTO_INCREMENT 处理”。
对于MyISAM表,您可以指定AUTO_INCRMENT辅助列
在多列键中。在这种情况下,重用从中删除的值
即使对于 MyISAM 表,序列的顶部也会出现。参见章节
3.6.9,“使用自动增量”。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)