イベントの本文をBEGIN ... END
複合ステートメントブロック:
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
各ステートメントはセミコロンで終了する必要があることに注意してください。したがって、最初に検出されたセミコロンがCREATE EVENT
の終わりであると見なされないように、異なるステートメント区切り文字を使用するようにクライアントを構成する必要があります。 コマンド(これを行う方法はクライアントによって異なりますが、MySQLコマンドラインツールで
、DELIMITER
を使用できます コマンド
phpMyAdminでは、SQL入力ボックスの下に区切り文字を設定できます。
または、この場合、複数テーブルのUPDATE
を使用できます。 単純なステートメントを1つだけ必要とするように変数の初期化を実行する構文:
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