我最近遇到了一個問題。我想在MySQL中建立一個類似於遊戲的系統,該系統將增加current_energyCOLUMN 的用戶表定義的值經常隨着時間的推移,例如增加5到值每5分鐘過去了。MySQL/PHP - 經過一定時間後自動更新列
是否有可能通過MySQL本身完成,或者我應該尋找一種更新它的方式,比方說,基於time()的PHP查詢,玩家登錄;與對比last_loginCOLUMN?
我最近遇到了一個問題。我想在MySQL中建立一個類似於遊戲的系統,該系統將增加current_energyCOLUMN 的用戶表定義的值經常隨着時間的推移,例如增加5到值每5分鐘過去了。MySQL/PHP - 經過一定時間後自動更新列
是否有可能通過MySQL本身完成,或者我應該尋找一種更新它的方式,比方說,基於time()的PHP查詢,玩家登錄;與對比last_loginCOLUMN?
不要這樣做。你會安排一個事件或工作,只是加載到你的服務器上。
相反,創建一個邏輯視圖像這樣:
create view v_table as
select t.*,
current_energy + floor(timestampdiff(minute, last_login, now())/5)
from t;
這似乎也在訣竅,但它會不斷更新,因爲用戶不斷瀏覽遊戲,或只會在登錄時添加此值? –
@DamianDoman。 。 。這是基本的想法。您需要在表格中保留正確的值才能得到您真正需要的值。 –
你可以寫一個PHP腳本來更新列,並在crontab中添加它配置它爲每5分鐘運行 –
cron作業的聽說過嗎? – Akintunde007
@Akin實際上我從來沒有聽說過這些,我試圖通過谷歌在一會兒得到一些信息,但乍一看似乎可以解決這個問題。 –