phpMyAdmin
 sql >> Base de Dados >  >> Database Tools >> phpMyAdmin

phpmyadmin|Como criar um evento faça 2 ações


Você pode envolver o corpo do seu evento em um BEGIN ... END bloco de instruções compostas:
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

Observe que cada instrução deve ser encerrada com um ponto e vírgula, portanto, você deve configurar seu cliente para usar um delimitador de instrução diferente para que ele não pense que o primeiro ponto e vírgula encontrado é o final do CREATE EVENT comando (como fazer isso dependerá do seu cliente, mas na ferramenta de linha de comando MySQL , você pode usar o DELIMITER comando e no phpMyAdmin você pode definir o delimitador abaixo da caixa de entrada SQL).

Alternativamente, neste caso, você pode usar a tabela múltipla UPDATE sintaxe para executar a inicialização da variável de forma que você exija apenas uma única instrução simples:
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