在这篇文章中,我们将解决在指定时间间隔后从 MySQL 数据库删除记录的问题。
问题:
MySQL 表中的消息“id”、“message”和“date”列需要在 7 天后删除。日期以“YYYY-MM-DD HH:MM:SS”格式指定。建议在此删除过程中使用 MySQL 事件而不是 cron 作业。
查询:
下面的查询包括删除超过 7 条消息的修订条件天:
CREATE EVENT delete_event ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 1 DAY ON COMPLETION PRESERVE DO BEGIN DELETE messages WHERE date < DATE_SUB(NOW(), INTERVAL 7 DAY); END;
澄清:
而不是使用问题中建议的条件(“DELETE messages WHERE date >=(当前日期 - 7 天) )"),我们使用“WHERE date 建议: 虽然 MySQL 事件可用于此目的出于目的,使用简单的 cron 脚本也是一个有效的选择。它提供更轻松的维护,避免复杂的 SQL 解决方法,并与系统无缝集成。
以上是如何在7天后自动删除MySQL记录?的详细内容。更多信息请关注PHP中文网其他相关文章!