古いSSNに基づいて顧客を検索して更新することにより、顧客のSSNを更新しようとしています。私は何が欠けていますか?データベースにssNumに一致するものがあることがわかっていても、これは結果を返しません。ありがとう。
String query = "UPDATE Customers SET ss_num = ('" + updateSsn
+ "') WHERE ss_num = ('" + ssNum + "')";
このタイプのクエリは安全ではありません( SQLインジェクションに対して脆弱です)。次のようにクエリを記述し、以下を使用しますPreparedStatement
。
String query = "UPDATE Customers SET ss_num = ? WHERE ss_num = ?";
PreparedStatement ps = con.prepareStatement(query);
ps.setString(1, updateSsn);
ps.setString(2, ssnNum);
executeUpdate()
を返さないメソッドを使用する必要がありますがResultSet
、numberOfRowsUpdated
PreparedStatement
代わりに使用してください