MySQL不会使用较小的值正确执行UPDATE

时间:2014-02-24 16:08:49

标签: php mysql database

我需要更新数据库中的一些条目,它适用于像70000或90000这样的值,但是当我尝试使用3000左右时,它只是没有做任何事情。我试图直接进入SQL控制台,但它也不起作用。

这就是代码:

$query = "UPDATE `leaderboard` SET `leaderkills` = $totalkills WHERE `steamid` = $steamid";

我打印出了查询,它适用于这个:

UPDATE `leaderboard` SET `leaderkills` = 93709 WHERE `steamid` = 76561198036906035

但不是这个:

UPDATE `leaderboard` SET `leaderkills` = 2859 WHERE `steamid` = 76561198005842077

我还制作了我的表格的屏幕截图(http://i.imgur.com/tChQ8cv.png)。

我将不胜感激。

3 个答案:

答案 0 :(得分:0)

您的表中是否存在

steamid = 76561198005842077?

76561198036906035!= 76561198005842077

答案 1 :(得分:0)

我认为其中一个可能的问题可能是,当你将整数传递给它时,steamid是一个varchar,试着将它括在查询的引号中:

UPDATE `leaderboard` SET `leaderkills` = 2859 WHERE `steamid` = "76561198005842077"

除此之外,有人建议steamid应该是一个整数

答案 2 :(得分:0)

如果没有所有值,则很难确定,但问题可能在于您使用的是非精确数字类型(double)来保存可以精确存储在integer中的内容列。