如何在每行检查mysql表以查看时间戳是否超过10分钟,如果使用c#,则删除它?
答案 0 :(得分:2)
查询很简单:
DELETE FROM yourtable WHERE timestampfield < DATE_SUB(now(), INTERVAL 10 MINUTE)
这可以在任何语言中使用,因为它只是一个简单的SQL查询,并且完全独立于前端。
答案 1 :(得分:0)
您可以在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