Php 可通过检查日期列自动删除记录的数据库
假设有一个数据库,其中包含一个具有日期和事件列的表,现在总共有10条记录,我希望比当前日期更早的记录应自动删除,并且当前日期记录应存在于数据库中,以便将来的记录也应存在,有没有人知道这样的事情,或者可以帮助我如何做到这一点。任何参考资料都会有帮助。我对php、phpmyadmin、sql持开放态度。任何帮助都将不胜感激。首先,它太宽泛了。你可以考虑为此而使用。您可以将其设置为每24小时运行一次,并删除小于Php 可通过检查日期列自动删除记录的数据库,php,mysql,phpmyadmin,Php,Mysql,Phpmyadmin,假设有一个数据库,其中包含一个具有日期和事件列的表,现在总共有10条记录,我希望比当前日期更早的记录应自动删除,并且当前日期记录应存在于数据库中,以便将来的记录也应存在,有没有人知道这样的事情,或者可以帮助我如何做到这一点。任何参考资料都会有帮助。我对php、phpmyadmin、sql持开放态度。任何帮助都将不胜感激。首先,它太宽泛了。你可以考虑为此而使用。您可以将其设置为每24小时运行一次,并删除小于NOW()的所有记录。激活事件支持: SET GLOBAL event_scheduler
NOW()的所有记录。
激活事件支持:
SET GLOBAL event_scheduler = ON;
添加调度程序:
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 ;
分隔符|
如果存在DROP事件“清除旧行”`|
创建事件“清除旧行”`
按时
每1小时启动一次当前\u时间戳
竣工保护区
使可能
注释“清除所有行<当前时间戳”
做
开始
从tablename中删除日期<当前时间戳;
结束|
定界符;
可能的重复项您能指出一些参考资料或教程,我可以从中了解到这一点吗?每当我试图在phpmyadmin中打开事件时,它说我需要超级权限才能做到这一点,现在如何克服这一点?当我试图激活事件时,它说我需要超级权限才能做到这一点,我得到的是谁?必须以root身份登录mysql-u root-p'rootpass'