2012-01-05 31 views
0

我创建了一个具有自动递增字段的表。我插入了几条记录并将其删除。我们必须更改php.ini文件并重新启动机器。自动增量字段从1开始。我有一个网站,它使用在Windows Server 2008上运行的Joomla。它看起来像PHP和MySQL与Joomla集成在一起。我是PHP和MySQL服务器的新手。请让我知道可能是什么问题?我运行PHP 5.3.8和MySQL服务器5.0。感谢您的任何帮助。MySQL中自动编号字段的奇怪问题

+0

这通常不应发生正常:使用自动递增的ID将永远不会被重新使用。你确定插件没有自动重新创建该字段吗?你确定你将数据插入到同一个表中吗? – 2012-01-05 18:56:59

+0

你是如何删除,截断(在phpmyadmin中为空)或删除? ..截断将重置自动增量器 – 2012-01-05 18:58:57

+0

auto_increment可能已被重置为1的唯一方法是,如果删除并重新创建表,或者针对它运行alter以重置auto_increment值。你在php.ini文件中改变了什么? – 2012-01-05 18:59:27

回答

1

您是否使用TRUNCATE或DELETE命令删除数据? 如果是TRUNCATE,它将重置自动增量值。

+0

好的区别。 – 2012-01-05 20:46:17

1

这不应该发生normaly。但作为一种补救措施,您可以使用以下查询将自动增量计数器重置为以前的最后一个值。

ALTER TABLE theTableInQuestion AUTO_INCREMENT=newalue , so that you could continue with t 

能够通过设置NEWVALUE =最后autoincrementvalue +1