我在我的java代碼中運行一個簡單的更新語句到一個oracle數據庫(JDBC調用),它會更新記錄時發現,但何時記錄不存在我得到「java.sql.SQLException:ORA-01002:抓取序列」異常。這是我的代碼,爲什麼是異常?我應該在哪裏改進它。代碼示例會非常有幫助。爲什麼我越來越java.sql.SQLException:ORA-01002:抓取序列異常
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;
}
我不是一個Java開發人員,但從我所瞭解的其他語言中,我認爲rs.next()可能是問題,因爲更新查詢可能沒有返回任何結果集,所以next()失敗。 .. –
你曾經在Java中編寫過SQL插入嗎? –
我只是在學習,對不起,如果這是一個愚蠢的問題。 – JS11