syntaxe sur une procédure et un évènement
Bonjour,
Je souhaite créer un programmateur d'évènement qui exécute une procédure sur une table toutes ls 20 minutes
La table en question est :
tblconnexion
dont 3 champs sont utilisés :
- date_lastconnexion DATETIME
- date_intermediaire DATETIME
- enligne int
Voici le code mysql qui produit une erreur !
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
|
CREATE PROCEDURE SetInitialisation()
BEGIN
DECLARE d1 DATETIME;
DECLARE d2 DATETIME;
SELECT date_lastconnexion, date_intermediaire INTO d1,d2
FROM tblconnexion
WHERE enligne=1;
IF (d2 - CURRENT_TIMESTAMP >1200)
UPDATE tblconnexion SET enligne=0, date_lastconnexion = NOW()
ELSE
UPDATE tblconnexion SET date_intermediaire = NOW()
END IF;
END;
CREATE EVENT IF NOT EXISTS EventInitialisation()
ON SCHEDULE EVERY 20 MINUTE
ENABLE
DO CALL SetInitialisation(); |
L'erreur signalé est :
Code:
1 2 3 4 5 6
| requête SQL:
CREATE PROCEDURE SetInitialisation( ) BEGIN DECLARE d1 DATETIME
MySQL a répondu:
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 3 |
Je ne vois pas l'origine de l'erreur . Pouvez-vous m'aider, svp?
Merci