MySQL exécute des scripts automatisés
P粉821231319
2023-08-18 11:24:32
<p>J'ai une base de données MySQL avec deux tables : pilotes et périphériques</p>
<p>La table des pilotes comporte un champ appelé date d'expiration.
La table des appareils comporte un champ appelé statut. </p>
<p>Mon objectif est de créer un événement qui : </p>
<ul>
<li>Obtenir la date actuelle</li>
<li>Comparez les pilotes (date d'expiration) avec la date actuelle</li>
<li>Si la date d'expiration est dépassée, vous devez modifier l'état de l'appareil en « EXP »</li>
</ul>
<p>Une telle chose est-elle possible ?
Comme un contrôle d'expiration</p>
Voici la requête que votre événement doit exécuter :
Quant à la création d'événement, vous disposez de plusieurs options, dont certaines sont listées ici :
Quoi qu'il en soit, vous souhaiterez peut-être envelopper votre
UPDATE
dans une procédure stockée, et s'il y a plus d'écritures, vous souhaiterez peut-être également envelopper une transaction lorsque cet événement est appelé.D'accord, considérons la
MySQL
structure de table suivante :Vous devez parcourir chaque pilote pour voir s'il est obsolète et mettre à jour l'appareil correctement.
Tout d'abord, vous devez activer
EVENTS
dans la base de données :Ensuite, vous pouvez créer un pilote
event
,检查所有active
设备的expired
qui s'exécute quotidiennement et le mettre à jour de manière appropriée :