2017-04-23 8 views
1

最近問題が発生しました。私はTABLE定義された値が定期的に時間をかけて、例えば5分ごとに合格した値に5を追加current_energyCOLUMNのユーザーに追加するMySQLでのゲームのようなシステムを作成します。MySQL/PHP - 一定時間が経過した後に列を自動更新する

MySQL自体で行うことは可能ですか、それともtime()に基づいたPHPクエリでプレーヤーのログインを更新する方法を探すべきですか?との比較last_loginコラム

+0

あなたが列を更新し、5分ごとに –

+0

cronジョブを聞いたことを実行するように設定するのcrontabにそれを追加するためにPHPスクリプトを書くことができますか? – Akintunde007

+0

@Akin実際に私はそれらのことを聞いたことがない、私は一瞬でGoogleを介していくつかの情報を取得しようとしますが、一見、この問題を解決できるようです。 –

答えて

1

しないでください。サーバーに負荷を追加するだけで、イベントやジョブをスケジュールすることになります。

代わりに、このようなロジックとビューを作成します。

create view v_table as 
    select t.*, 
      current_energy + floor(timestampdiff(minute, last_login, now())/5) 
    from t; 
+0

これもやっているようですが、ユーザーがゲームをブラウズし続けると更新するか、ログイン時にこの値を追加するだけですか? @DamianDoman。 –

+0

。 。これが基本的な考えです。本当に必要なものを得るには、テーブルに正しい値を保持する必要があります。 –

関連する問題