Imaginez que vous disposez d'une base de données et que vous devez mettre à jour l'état des enregistrements à « 0 » chaque jour à 13 heures. Voici une requête qui pourrait vous venir à l'esprit au départ :
CREATE EVENT RESET ON SCHEDULE AT TIMESTAMP DO UPDATE `ndic`.`students` SET `status` = '0';
Mais cette requête utilise TIMESTAMP, qui ne permet pas de planifier à une heure précise. Alors, comment pouvons-nous atteindre ce résultat ?
La réponse réside dans le mot-clé STARTS. Voici une requête modifiée qui exécute l'événement tous les jours à 13 heures :
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';
Cette requête démarre l'événement à (CURRENT_DATE 1 DAY 1 HOUR) et le répète toutes les 24 heures par la suite. Cela garantit que l'événement se déclenche à 13 heures tous les jours, comme souhaité.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!