Heim >Datenbank >MySQL-Tutorial >Wie kann ich ein MySQL-Ereignis so planen, dass es täglich zu einer bestimmten Zeit ausgeführt wird?
Stellen Sie sich vor, Sie haben eine Datenbank und müssen den Status der Datensätze jeden Tag um 13 Uhr auf „0“ aktualisieren. Hier ist eine Abfrage, die Ihnen zunächst vielleicht in den Sinn kommt:
CREATE EVENT RESET ON SCHEDULE AT TIMESTAMP DO UPDATE `ndic`.`students` SET `status` = '0';
Aber diese Abfrage verwendet TIMESTAMP, was keine Planung zu einem bestimmten Zeitpunkt zulässt. Wie können wir also dieses Ergebnis erzielen?
Die Antwort liegt im Schlüsselwort STARTS. Hier ist eine modifizierte Abfrage, die das Ereignis jeden Tag um 13:00 Uhr ausführt:
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';
Diese Abfrage startet das Ereignis um (CURRENT_DATE 1 DAY 1 HOUR) und wiederholt es danach alle 24 Stunden. Dadurch wird sichergestellt, dass das Ereignis wie gewünscht jeden Tag um 13 Uhr ausgelöst wird.
Das obige ist der detaillierte Inhalt vonWie kann ich ein MySQL-Ereignis so planen, dass es täglich zu einer bestimmten Zeit ausgeführt wird?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!