phpMyAdmin
 sql >> Base de données >  >> Database Tools >> phpMyAdmin

phpmyadmin|Comment créer un événement faire 2 actions

Vous pouvez envelopper le corps de votre événement dans un BEGIN ... END bloc d'instruction composé :

CREATE EVENT rate ON SCHEDULE EVERY 24 HOUR STARTS '2011-12-01 20:00:00' DO BEGIN
  SET @p=1;
  UPDATE users SET rate = (@p:[email protected]+1) ORDER BY power DESC;
END

Notez que chaque instruction doit se terminer par un point-virgule, vous devez donc configurer votre client pour qu'il utilise un délimiteur d'instruction différent afin qu'il ne pense pas que le premier point-virgule rencontré est la fin de CREATE EVENT commande (comment faire cela dépendra de votre client, mais dans l'outil de ligne de commande MySQL , vous pouvez utiliser le DELIMITER commande et dans phpMyAdmin, vous pouvez définir le délimiteur sous la zone de saisie SQL).

Alternativement, dans ce cas, vous pouvez utiliser la table multiple UPDATE syntaxe pour effectuer une initialisation de variable de sorte que vous n'ayez besoin que d'une seule instruction simple :

CREATE EVENT rate ON SCHEDULE EVERY 24 HOUR STARTS '2011-12-01 20:00:00' DO
  UPDATE   users, (SELECT @p:=0) init
  SET      users.rate = (@p:[email protected]+1)
  ORDER BY users.power DESC