1

我想知道如何在 1 周后从 MySQL 数据库中删除记录

这是我用于插入记录和添加日期的代码

INSERT INTO moviesdone VALUES ('" . $id2 . "', NOW())

其中 $id 是我正在插入并希望在 1 周后删除的名称。

我也想自动执行此操作,我可以在 phpMyAdmin 中进行设置

所以,我只需要知道:如何正确写入日期(如果需要)以及如何在一周后删除记录?

4

2 回答 2

6

定期运行此代码,例如每天一次:

DELETE FROM moviesdone 
WHERE datetimecol < NOW() - INTERVAL 7 DAY

您可以使用 事件调度程序

于 2012-05-06T08:29:43.743 回答
3

如果您使用的是 MySQL 5.1.6 或更高版本,您可以使用CREATE EVENT

就像是

CREATE EVENT del_entries
ON SCHEDULE EVERY 1 DAY
DO
   DELETE FROM table WHERE DATEDIFF(NOW(), creation_date) >= 7;
于 2012-05-06T08:33:43.960 回答