Java更新语句问题

Java更新语句问题,java,jdbc,Java,Jdbc,我试图通过基于旧SSN搜索客户,然后对其进行更新,来更新客户的SSN。我错过了什么?即使我知道数据库中有ssNum的匹配项,这也不会返回结果。谢谢 String query = "UPDATE Customers SET ss_num = ('" + updateSsn + "') WHERE ss_num = ('" + ssNum + "')"; 您需要使用executeUpdate()方法,它不会返回ResultSet,但会返回numberOfRowsUp

我试图通过基于旧SSN搜索客户,然后对其进行更新,来更新客户的SSN。我错过了什么?即使我知道数据库中有ssNum的匹配项,这也不会返回结果。谢谢

String query = "UPDATE Customers SET ss_num = ('" + updateSsn
                + "') WHERE ss_num = ('" + ssNum + "')";

您需要使用
executeUpdate()
方法,它不会返回
ResultSet
,但会返回
numberOfRowsUpdated


改用
PreparedStatement
您需要使用
executeUpdate()
方法,它不会返回
ResultSet
,但会返回
numberOfRowsUpdated


改为使用
PreparedStatement

该类型的查询不安全(易受攻击)。按如下方式编写查询并使用:


该类型的查询不安全(易受攻击)。按如下方式编写查询并使用:


您应该指定您的DBMS和引发的异常请将PreparedStatement与参数化查询一起使用以防止SQL注入之类的事情。您应该指定您的DBMS和引发的异常请将PreparedStatement与参数化查询一起使用以防SQL注入之类的事情。谢谢!问题出在executeUpdate()上。谢谢!问题出在executeUpdate()上。
String query = "UPDATE Customers SET ss_num = ? WHERE ss_num = ?";
PreparedStatement ps = con.prepareStatement(query);
ps.setString(1, updateSsn);
ps.setString(2, ssnNum);