Php Mysql数据库查询编码

时间:2015-07-08 11:39:34

标签: php mysql

我从数据库中获取数据。我希望每天我的id从1开始,插入每条记录后自动递增,但在一天结束后重置为零。从第二天开始。但我无法找到适当的解决方案。

1 个答案:

答案 0 :(得分:1)

"reset" the auto-increment value有几种不同的方式。

如果自动增量列是标识符,那么最简单的方法可能是简单地截断表:

TRUNCATE TABLE table_name;

这当然会删除所有数据,但由于您要删除标识符,因此无论如何数据都不再有意义。 (如果那个那么你就会想要更多地考虑这个问题,因为重新使用标识符是一个着名的坏主意。)

另一方面,如果自动增量,则允许使用标识符和重复项,则手动重置该值应该有效:

ALTER TABLE table_name AUTO_INCREMENT = 1;

至于每天做其中任何一项,只需将每日cron作业设置为午夜运行。或者,如果不这样做,如果您仅限于请求/响应Web应用程序,则在写入表时,您可以首先检查最后写入的记录是否与当天相同。如果不是,请重置自动增量。 (它不是最高效的方法,但在没有后台任务的情况下,它可以完成工作。)