我搜索了一遍,搜索了MYSQL文檔ad nauseam,找不到一個簡潔的方式來自動刪除超過給定時間範圍的記錄。我已經能夠在5.1中得到一個查詢,在當前時間的DIFF函數中將TIMESTAMP值轉換爲DATETIME,以查看它是否符合到期條件。我讀過5.1現在有能力運行計劃任務,但沒有太多配置它的方式。我沒有爲此使用觸發器。在MySQL中自動刪除過期記錄的方法?
在MySQL文檔爲5.1,它是指創建事件:
'CREATE
[DEFINER = { user | CURRENT_USER }]
EVENT
[IF NOT EXISTS]
event_name
ON SCHEDULE schedule
[ON COMPLETION [NOT] PRESERVE]
[ENABLE | DISABLE | DISABLE ON SLAVE]
[COMMENT 'comment']
DO sql_statement;
schedule:
AT timestamp [+ INTERVAL interval] ...
| EVERY interval
[STARTS timestamp [+ INTERVAL interval] ...]
[ENDS timestamp [+ INTERVAL interval] ...]
interval:
我目前使用蟾蜍(其一直是天賜)。我的查詢有效地刪除了超過30分鐘的任何記錄。我只需要找到這個事件是如何被調用的...
謝謝!