我正在使用以下代码更新我的mysql表,其中Moving50和Moving200都是可变字符。
String sql = "update toplosers set Moving50 = ?, where Symbol = ?";
PreparedStatement stmt = conn.prepareStatement(sql);
for(int i1=0;i1<i;i1++)
{
stmt.setString(1, moving50[i1]);
stmt.setString(2,symbol[i1]);
stmt.addBatch();
}
stmt.executeBatch();
}
我收到“您的SQL语法有错误;请查看与您的MySQL服务器版本相对应的手册,以获取在第1行的'where Symbol ='mysymbol'附近使用的正确语法”
问题是什么
最佳答案
无需为where子句添加“逗号”。
现在检查一下。
String sql = "update toplosers set Moving50 = ? where Symbol = ?";
PreparedStatement stmt = conn.prepareStatement(sql);
for(int i1=0;i1<i;i1++)
{
stmt.setString(1, moving50[i1]);
stmt.setString(2,symbol[i1]);
stmt.addBatch();
}
stmt.executeBatch();
}
请参阅示例示例here
关于java - SQL准备好的语句未执行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9909677/