检查记录是否旧并删除它

本文关键字:删除 记录 是否 检查 | 更新日期: 2023-09-27 18:09:12

我如何检查mysql表的每一行,看看时间戳是否大于10分钟,并删除它,如果这是真的使用c# ?

检查记录是否旧并删除它

这个查询很简单:

DELETE FROM yourtable WHERE timestampfield < DATE_SUB(now(), INTERVAL 10 MINUTE)

这将在任何语言中工作,因为它只是一个简单的SQL查询,并且完全独立于前端。

您可以在MySQL中使用每隔x分钟运行一次的事件,并从表中删除旧记录。

DELIMITER $$
CREATE EVENT IF NOT EXISTS clean_log_every_10_minutes ON SCHEDULE EVERY 5 MINUTE
ENABLE 
DO BEGIN
  DELETE FROM table1 WHERE timestampfield < DATE_SUB(now(), INTERVAL 10 MINUTE);
END $$
DELIMITER ;

这样,清理将完全自动进行。

见:http://dev.mysql.com/doc/refman/5.1/en/create-event.html