2012-08-07 72 views
0

這是針對遊戲應用程序我希望用戶在站在火中時受到傷害。我寧願不允許負面的惠普(健康點),但這個查詢是崩潰我的服務器,因爲數據超出範圍。遊戲應用程序BIGINT UNSIGNED值超出範圍

UPDATE game_moblist set hp=GREATEST(0,(hp-100)) WHERE id=2923 

錯誤消息: #1690 - BIGINT UNSIGNED值超出範圍 '(legendsgame_moblisthp - 100。)'

我以爲最大的將只允許0經歷。我有點擔心只是設置HP,因爲如果兩個查詢一次造成損壞,我可以放棄其中一個的影響。

+0

是我的回答有幫助嗎? – 2012-10-02 16:56:47

回答

0

嘗試backticking您的列標識符:

UPDATE `game_moblist` set `hp`=GREATEST(0,(`hp`-100)) WHERE `id`=2923 
+0

我在這裏得到同樣的錯誤,但我知道這是行不通的,因爲phpMyAdmin的錯誤消息被抽出了#1690 - BIGINT UNSIGNED值超出'('legends'.'game_moblist'.'hp' - 100) 「 – Shawn 2012-08-07 17:32:13