首頁 >資料庫 >mysql教程 >如何安排 MySQL 事件在每天的特定時間運行?

如何安排 MySQL 事件在每天的特定時間運行?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-12-27 00:26:16585瀏覽

How Can I Schedule a MySQL Event to Run Daily at a Specific Time?

每天在特定時間執行 MySQL 事件調度程序

假設您有一個資料庫,需要每天下午 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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn