Java MySQL错误-不正确的双精度值:';箱子';

Java MySQL错误-不正确的双精度值:';箱子';,java,mysql,sql,Java,Mysql,Sql,当我执行此方法时,我试图向特定用户添加一个值,即所谓的chests: public void addAmm(Player player, int amount, DataType type) { try { Statement sql = mySql.getConnection().createStatement(); sql.executeUpdate("UPDATE `playerinfo` SET `chests`= '" + amount + "'

当我执行此方法时,我试图向特定用户添加一个值,即所谓的
chests

public void addAmm(Player player, int amount, DataType type) {
    try {
        Statement sql = mySql.getConnection().createStatement();
        sql.executeUpdate("UPDATE `playerinfo` SET `chests`= '" + amount + "' + 'chests' WHERE Username='" + player.getName() + "';");
        sql.close();
    } catch (SQLException e) {
        e.printStackTrace();
    }
}
它给了我这个错误:

[12:26:14警告]:com.mysql.jdbc.MysqlDataTruncation:数据截断:截断
不正确的双精度值:“胸部”


让我们假设
amount
5
,而
player.getName()
Paul
。你得到的是:

"UPDATE `playerinfo` SET `chests`= '5' + 'chests' WHERE Username='Paul';"
因此,您将
'5'+'chests'
分配给
'chests`
。如果此列的类型为double,则必须转换(截断)指定的值

您可能更想要以下内容:

"UPDATE `playerinfo` SET `chests`= '5' + `chests` WHERE Username='Paul';" 
i、 e

这会将玩家保罗的
金额添加到
`chests`
列的值中

"UPDATE `playerinfo` SET `chests`= '" + amount 
                  + "' + `chests` WHERE Username='" + player.getName() + "';"