Jdbc 在java中运行SQL update语句
有很多与这个话题相关的问题,但我找不到解决问题的办法。 我有一个“产品”表,我正试图在netbeans中更新它。SQL语句在sqldev中工作,我已经仔细检查了我的连接等Jdbc 在java中运行SQL update语句,jdbc,sql-update,execute,Jdbc,Sql Update,Execute,有很多与这个话题相关的问题,但我找不到解决问题的办法。 我有一个“产品”表,我正试图在netbeans中更新它。SQL语句在sqldev中工作,我已经仔细检查了我的连接等 update products set pvolume = 2, pprice = 15 where productid = 3; 输出:更新了1行 但在netbeans中运行时,它不会执行。如果我错过了一些小的语法问题,我道歉,但我真的需要这个方法的帮助 public boolean editProduct(int ID,
update products
set pvolume = 2, pprice = 15
where productid = 3;
输出:更新了1行
但在netbeans中运行时,它不会执行。如果我错过了一些小的语法问题,我道歉,但我真的需要这个方法的帮助
public boolean editProduct(int ID, String name, int volume, int quantity, String description, int price) {
boolean success = false;
Connection con = ConnectionTools.getInstance().getCurrentConnection();
String SQLString1 = "UPDATE products "
+ "SET pname = ?, "
+ "pvolume = ?, "
+ "pquantity = ?, "
+ "pdescription = ?, "
+ "pprice = ? "
+ "WHERE productID = ?";
PreparedStatement statement = null;
try {
statement = con.prepareStatement(SQLString1);
statement.setString(1, name);
statement.setInt(2,volume);
statement.setInt(3, quantity);
statement.setString(4, description);
statement.setInt(5, price);
statement.setInt(6, ID);
statement.executeUpdate();
success = true;
}catch (Exception e){
System.out.println("Insertion error!");
System.out.println(e.getMessage());
}finally {
try {
statement.close();
} catch (SQLException e) {
System.out.println("Statement close error!");
System.out.println(e.getMessage());
}
}
return success;
}
在调试过程中,它似乎通过try-as语句.setInt(6,ID)运行,但随后不执行。以下是输出:
插入错误!
ORA-00971:缺少集合关键字
如有任何帮助/建议,将不胜感激!谢谢您必须使用括号:
更新产品集(pvolume=2,pprice=15),其中productid=3
括号是完全可选的。请参阅文档中的updateset子句:在异常尝试执行时仍使用括号捕获异常。此外,没有括号,它在SQL开发中也可以正常工作。。。?