假設您有一個資料庫,需要每天下午 1 點將記錄的狀態更新為「0」。最初可能會想到以下一個查詢:
CREATE EVENT RESET ON SCHEDULE AT TIMESTAMP DO UPDATE `ndic`.`students` SET `status` = '0';
但是該查詢使用 TIMESTAMP,它不允許在特定時間進行調度。那麼,我們要怎麼達到這個結果呢?
答案就在於 STARTS 關鍵字。以下是每天下午 1 點執行事件的修改後的查詢:
CREATE EVENT event_name ON SCHEDULE EVERY 1 DAY STARTS (TIMESTAMP(CURRENT_DATE) + INTERVAL 1 DAY + INTERVAL 1 HOUR) DO UPDATE `ndic`.`students` SET `status` = '0';
此查詢在 (CURRENT_DATE 1 DAY 1 HOUR) 開始事件,此後每 24 小時重複一次。這可確保事件根據需要在每天下午 1 點觸發。
以上是如何安排 MySQL 事件在每天的特定時間運行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!