小编典典

Java中的此更新查询有什么问题?

java

我正在尝试在托管bean中进行更新查询。这是代码:

try {
       PreparedStatement checkDB1 = (PreparedStatement) con.prepareStatement("update pocket set balance=? where username=?");
       checkDB1.setDouble(1, (double) FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("selectedUserBalance")-total); //This returns the desired result
       checkDB1.setString(2, (String) FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("selectedAccountIban")); //Returns the desired result

       checkDB1.executeQuery();

   } catch (SQLException e) {
       System.err.println("SQLState: " + ((SQLException)e).getSQLState());
            System.out.println("SQLState: " +((SQLException)e).getSQLState());
   }

我看到参数设置正确,好像查询中有错误。它进入捕获块。另外,我不知道如何查看堆栈跟踪,e.printStackTrace在这里不起作用,我怎么看?可以帮忙吗?

谢谢


阅读 277

收藏
2020-11-30

共1个答案

小编典典

尝试使用executeUpdate而不是executeQuery。我在执行数据库更新时看到了executeQuery的奇怪问题。

2020-11-30