我正在尝试通过基于旧SSN搜索它们然后更新它来更新客户的SSN。我错过了什么?即使我知道数据库中的ssNum匹配,这也不会返回结果。感谢。
String query = "UPDATE Customers SET ss_num = ('" + updateSsn
+ "') WHERE ss_num = ('" + ssNum + "')";
答案 0 :(得分:3)
这种类型的查询不安全(易受SQL injection攻击)。按如下所示编写查询并使用PreparedStatement
:
String query = "UPDATE Customers SET ss_num = ? WHERE ss_num = ?";
PreparedStatement ps = con.prepareStatement(query);
ps.setString(1, updateSsn);
ps.setString(2, ssnNum);
答案 1 :(得分:1)
您需要使用executeUpdate()
方法,该方法不返回ResultSet
,但会返回numberOfRowsUpdated
使用PreparedStatement
代替