gpt4 book ai didi

java - com.mysql.jdbc.MysqlDataTruncation : Data truncation: Truncated incorrect DOUBLE value: ',3'

转载 作者:行者123 更新时间:2023-11-29 03:08:52 26 4
gpt4 key购买 nike

我正在尝试为我的 Minecraft 服务器编写一个商店插件,但每当有人执行/purchase 命令时我总是收到错误消息。

这是错误:

2012-07-03 04:27:28 [SEVERE]    com.mysql.jdbc.MysqlDataTruncation: Data truncation: Truncated incorrect DOUBLE value: ',3'2012-07-03 04:27:28 [SEVERE]    at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3591)2012-07-03 04:27:28 [SEVERE]    at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3525)2012-07-03 04:27:28 [SEVERE]    at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1986)2012-07-03 04:27:28 [SEVERE]    at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2140)2012-07-03 04:27:28 [SEVERE]    at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2620)2012-07-03 04:27:28 [SEVERE]    at com.mysql.jdbc.StatementImpl.executeUpdate(StatementImpl.java:1662)2012-07-03 04:27:28 [SEVERE]    at com.mysql.jdbc.StatementImpl.executeUpdate(StatementImpl.java:1581)2012-07-03 04:27:28 [SEVERE]    at com.Chipmunk9998.Cod.CodCommandExecutor.onCommand(CodCommandExecutor.java:1421)2012-07-03 04:27:28 [SEVERE]    at org.bukkit.command.PluginCommand.execute(PluginCommand.java:40)2012-07-03 04:27:28 [SEVERE]    at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:166)2012-07-03 04:27:28 [SEVERE]    at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:479)2012-07-03 04:27:28 [SEVERE]    at com.Chipmunk9998.Cod.CodCommandExecutor.onCommand(CodCommandExecutor.java:1443)2012-07-03 04:27:28 [SEVERE]    at org.bukkit.command.PluginCommand.execute(PluginCommand.java:40)2012-07-03 04:27:28 [SEVERE]    at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:166)2012-07-03 04:27:28 [SEVERE]    at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:479)2012-07-03 04:27:28 [SEVERE]    at net.minecraft.server.NetServerHandler.handleCommand(NetServerHandler.java:821)2012-07-03 04:27:28 [SEVERE]    at net.minecraft.server.NetServerHandler.chat(NetServerHandler.java:781)2012-07-03 04:27:28 [SEVERE]    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:764)2012-07-03 04:27:28 [SEVERE]    at net.minecraft.server.Packet3Chat.handle(Packet3Chat.java:34)2012-07-03 04:27:28 [SEVERE]    at net.minecraft.server.NetworkManager.b(NetworkManager.java:229)2012-07-03 04:27:28 [SEVERE]    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:113)2012-07-03 04:27:28 [SEVERE]    at net.minecraft.server.NetworkListenThread.a(NetworkListenThread.java:78)2012-07-03 04:27:28 [SEVERE]    at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:567)2012-07-03 04:27:28 [SEVERE]    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:459)2012-07-03 04:27:28 [SEVERE]    at net.minecraft.server.ThreadServerApplication.run(SourceFile:492)

And here's my code:

if (cmdsender == null) {
File weaponFile = new File(plugin.getDataFolder(), "weapons.yml");
FileConfiguration weaponData = YamlConfiguration.loadConfiguration(weaponFile);

String sql = "UPDATE account_info SET Money = Money - "
+ weaponData.getString(args[0] + "." + args[1] + ".Price")
+ " WHERE Username = '" + args[2] + "'";

try {
plugin.st.executeUpdate(sql);
} catch (SQLException e) {
e.printStackTrace();
}

sql = "UPDATE account_info SET Bought_" + args[0] + " = Bought_" + args[0]
+ " + ," + args[1] + " WHERE Username = '" + args[2] + "'";

try {
plugin.st.executeUpdate(sql);
} catch (SQLException e) {
e.printStackTrace();
}

plugin.getServer().getPlayer(args[2]).sendMessage(
"You have successfully bought the "
+ weaponData.getString(args[0] + "." + args[1] + ".Name") + "."
);

return true;
}

我尝试用谷歌搜索它,但找不到任何有用的东西。

最佳答案

看起来你在这一行中有错误:

  sql = "UPDATE account_info SET Bought_" + args[0] + " = Bought_" + args[0]
+ " + ," + args[1] + " WHERE Username = '" + args[2] + "'";

args[1] 之前的字符串中有一个错误的逗号。如果 args[0]args[1]args[2] 包含 13 foo ,然后 sql 将评估为:

UPDATE account_info SET Bought_1 = Bought_1 + ,3 WHERE Username = 'foo'

这显然是语法错误并解释了您的错误消息 Data truncation: Truncated incorrect DOUBLE value: ',3'

关于java - com.mysql.jdbc.MysqlDataTruncation : Data truncation: Truncated incorrect DOUBLE value: ',3' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11303248/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com