Java コードで oracle データベース (JDBC 呼び出し) に対して単純な更新ステートメントを実行しています。レコードが見つかったときに更新されますが、レコードが存在しない場合、「 java.sql.SQLException: ORA-01002: fetch out of sequence 」が発生します。 " 例外。ここに私のコードがありますが、なぜ例外なのですか? どこを改善すればよいでしょうか。コードサンプルは非常に役に立ちます。
public String preformUpdate(String someValue){
ResultSet rs;
String result = "Update failed record not found.";
StringBuffer sb = new StringBuffer();
try{
conn = DBConnect.getInstance().dbOracleConnect();
StringBuffer sbUpdate = new StringBuffer();
sbUpdate = new StringBuffer("UPDATE sometable ");
sbUpdate.append("SET value1 = ? ");
sbUpdate.append("WHERE value2 = ?" );
ps = conn.prepareStatement(sbUpdate.toString());
ps.setString(1, "0");
ps.setString(2, someValue);
rs = ps.executeQuery();
if (rs.next()){
result = "Value updated";
}
}
catch (Exception e){
e.printStackTrace();
}
finally{
JDBCHelper.close(cs);
JDBCHelper.close(conn);
}
return result;
}