可以通过查看日期列自动删除记录的数据库

时间:2017-04-01 09:39:00

标签: php mysql phpmyadmin

假设有一个数据库,其中包含一个包含日期和事件列的表,现在总共有10条记录我希望自动删除当前日期之前的记录,并且当前日期记录应该存在于数据库,以便未来的记录也应该存在,有没有人知道这样的事情或可以帮助我如何实现这一目标。任何参考都会有所帮助。我对php,phpmyadmin,sql开放。任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:1)

首先它太宽泛了。您可以考虑将MySQL Event Scheduler用于此目的。您可以将其设置为每24小时运行一次,并删除低于NOW()

的所有记录

答案 1 :(得分:0)

激活活动支持:

SET GLOBAL event_scheduler = ON;

添加sheduler:

DELIMITER |
DROP EVENT IF EXISTS `clear_old_rows`|
CREATE EVENT `clear_old_rows`
    ON SCHEDULE
    EVERY 1 HOUR STARTS CURRENT_TIMESTAMP
    ON COMPLETION PRESERVE
    ENABLE
    COMMENT 'clear all rows < CURRENT_TIMESTAMP'
    DO
    BEGIN
        DELETE FROM tablename WHERE date < CURRENT_TIMESTAMP ;
    END |
DELIMITER ;