sql >> Database >  >> Database Tools >> phpMyAdmin

phpmyadmin|Hoe maak je een evenement doe 2 acties

Je kunt de hoofdtekst van je evenement in een BEGIN ... END samengesteld instructieblok:

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

Merk op dat elke instructie moet worden afgesloten met een puntkomma, dus u moet uw client configureren om een ​​ander scheidingsteken voor de instructie te gebruiken, zodat hij niet denkt dat de eerste gevonden puntkomma het einde is van de CREATE EVENT commando (hoe u dit doet, hangt af van uw client, maar in de MySQL-opdrachtregeltool , kunt u de DELIMITER . gebruiken commando en in phpMyAdmin kun je het scheidingsteken onder het SQL-invoerveld instellen).

Als alternatief kunt u in dit geval de multiple-table UPDATE . gebruiken syntaxis om variabele initialisatie uit te voeren zodat u slechts een enkele eenvoudige instructie nodig heeft:

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


  1. Uitvoeringstijd query in Management Studio &profiler. Wat meet het?

  2. MySQL Workbench> Plugins> Hulpprogramma's> SQL-query opnieuw formatteren

  3. Wat is de juiste syntaxis van de if-clausule voor een opgeslagen MySQL-functie?

  4. UNIEKE beperking creëren voor meerdere kolommen in MySQL Workbench EER-diagram