在這篇文章中,我們將解決在指定時間間隔後從 MySQL 資料庫刪除記錄的問題。
問題:
MySQL 表中的訊息「id」、「message」和「date」欄位需要在 7 天後刪除。日期以「YYYY-MM-DD HH:MM:SS」格式指定。建議在此刪除過程中使用 MySQL 事件而不是 cron 作業。
查詢:
下面的查詢包括刪除超過7 條消息的修訂條件天:
CREATE EVENT delete_event ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 1 DAY ON COMPLETION PRESERVE DO BEGIN DELETE messages WHERE date < DATE_SUB(NOW(), INTERVAL 7 DAY); END;
澄清:
而不是使用問題中建議的條件(“DELETE messages WHERE date >=(目前日期 - 7 天) )"),我們使用「WHERE date 建議: 雖然 MySQL 事件可用於此目的出於目的,使用簡單的 cron 腳本也是一個有效的選擇。它提供更輕鬆的維護,避免複雜的 SQL 解決方法,並與系統無縫整合。
以上是如何在7天後自動刪除MySQL記錄?的詳細內容。更多資訊請關注PHP中文網其他相關文章!