2016-07-16 4 views
1

現在、私は借りた本に関するデータを保持するmysqlデータベースを持っています。誰かが本を借りたら、データベースに有効期限を保存します。条件付きのmysqlイベントを作成します。

したがって、時間の経過とともに返されないブックのステータスを更新するmysqlイベントを作成します。このイベントを作成するにはどうしたらいいですか?

CREATE EVENT `EXPIRAR` ON SCHEDULE EVERY 1 
HOUR STARTS '2016-07-16 00:00:00.000000' ENDS '2018-07-29 
00:00:00.000000' ON COMPLETION NOT PRESERVE ENABLE DO DO IF 
mtl_aluguel.dataLimite=CURRENT_DATE THEN 
     UPDATE mtl_aluguel SET mtl_aluguel.estado='Expirou' 
    END IF 

しかし、私はIFに構文エラーを取得しています:

は、ここで私がしようとしているものです。

mtl_aluguelは私のテーブルの名前です。

+0

イベントは意味をなさないです。テーブルやその他のものからデータを読み出す際に読んでください。私はイベントのもののために私のプロフィールページの隣に3つのリンクがあります。おそらく彼らは助けになるでしょう(最初のものはかなり進歩しています)。だから、今はその1つを忘れてください。 2番目と3番目のものはかなり簡単で、物事を得るために知る必要があるものや、時間とトラブルを節約するものです。安価なホスティングプランでは、イベントは通常利用できません。 – Drew

答えて

1

@Drewと同様に、私のイベントは意味をなさない。だから私はそれを更新しました:

CREATE EVENT `EXPIRAR` ON SCHEDULE EVERY 1 
HOUR STARTS '2016-07-16 00:00:00.000000' ENDS '2018-07-29 
00:00:00.000000' ON COMPLETION NOT PRESERVE ENABLE DO UPDATE mtl_aluguel SET mtl_aluguel.estado='Expirou' WHERE mtl_aluguel.dataLimite = CURDATE() AND mtl_aluguel.estado!= 'Expirou'