“字段列表”中的未知列“ i”
[['A', '0'], ['A', '1'], ['A', '2'], ['A', '3'], ['A', '4']]
答案 0 :(得分:1)
您在字符串中使用i
,就像在字符串中使用values
或insert
一样。因此,很自然地,文本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:
请勿使用字符串连接将值放入SQL字符串中。首先,很容易搞砸(在这种情况下)。其次,除非您进行大量工作以确保生成的字符串干净(很容易弄乱),否则它是不安全的。