如何修复“字段列表”中的未知列“ i”

时间:2019-07-06 12:43:49

标签: java mysql

“字段列表”中的未知列“ i”

[['A', '0'], ['A', '1'], ['A', '2'], ['A', '3'], ['A', '4']]

1 个答案:

答案 0 :(得分:1)

您在字符串中使用i ,就像在字符串中使用valuesinsert一样。因此,很自然地,文本i被发送到数据库,该数据库没有列或标识符。

相反,使用准备好的语句和setInt

PreparedStatement ps = con.prepareStatement("insert into student (id, name) values (?, ?)");
for (int i = 1100; i < 20000; i++) {
    ps.setInt(1, 1100 + i); // Or I think you may just want `i`, not `1100 + i`
    ps.setString(2, "yang" + i);
    ps.addBatch();
}
ps.executeBatch();
con.commit();

让我向您介绍my friend Bobby

enter image description here

请勿使用字符串连接将值放入SQL字符串中。首先,很容易搞砸(在这种情况下)。其次,除非您进行大量工作以确保生成的字符串干净(很容易弄乱),否则它是不安全的。