- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是准备好的声明的新手,不确定我想做的事情是否合法。
String updatequery = "Update articles SET Title = ? WHERE id IN ?";
try{
prestatement = connect.prepareStatement(updatequery);
prestatement.setString(1, "Test");
prestatement.setString(2,"(4,5,6)");
我收到以下错误:
Error: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''(4,5,6)'' at line 1
看起来 setString() 方法正在向查询添加引号,有没有办法避免使用这个或其他方法来完成我想要做的事情?
最佳答案
试试这个:
final Collection<Integer> ids = Arrays.asList(4, 5, 6);
final StringBuilder updatequery = new StringBuilder("Update articles SET Title = ? WHERE id IN (");
for (int i = 0; i < ids.size(); i++) {
updatequery.append("?,");
}
updatequery.deleteCharAt(updatequery.length() - 1);
updatequery.append(")");
System.out.println(updatequery);
prestatement.setString(1, "Test");
int i = 2;
for (final Integer id : ids) {
prestatement.setInt(i ++, id);
}
关于JavaPreparedStatement setString() 在查询中添加引号(mysql jdbc),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22303085/
我熟悉使用 java 准备好的语句在表上插入/更新。在 Oracle 中,您可以在表上添加注释,我将如何使用准备好的语句来做到这一点? 这是我最初的尝试,但没有成功; PreparedStatemen
我在方法中收到 NullPointerException。我唯一怀疑的是我可能没有在准备好的语句中添加任何参数。代码如下 try { String sql = "update myTable se
我最初通过定义一个准备好的语句 prepstmt=conn.prepareStatement("..."); 然后在代码的各个部分使用它(通过函数) prepstmt.set
大家好:) 我想用 Oracle 10g 动态命名我的列。这是我想做的: SELECT NAME as "User.Name", EMAIL as "User.Email.For.Criter
我发送请求http://xxxx.com/test/?app_idx=80通过浏览器。 但是 ibatis 解析错误。 select CONCAT('http://localhost:8080
例如,如果我有: connection.prepareStatement("SELECT * FROM users WHERE s
这个问题已经有答案了: PreparedStatement with list of parameters in a IN clause [duplicate] (14 个回答) 已关闭 9 年前。
这个问题已经有答案了: PostgreSQL "Column does not exist" but it actually does (6 个回答) Error: Column does not e
我正在努力将 JSON 对象插入到我的 postgres v9.4 数据库中。我已将名为“evtjson”的列定义为类型 json(不是 jsonb)。 我正在尝试使用 Java (jdk1.8) 中
我是一名优秀的程序员,十分优秀!