I'm trying to retrieve an updatable ResultSet from an out parameter of an Oracle stored procedure. The procedure
is selecting for update. The code calling the proc is something like this...
Code:
CallableStatement st = cn.prepareCall(
"{ call bbs.si_queue.get_sync_customer(?,?) }",
ResultSet.TYPE_FORWARD_ONLY,
ResultSet.CONCUR_UPDATABLE
);
st.setInt(1, maxRecords);
st.registerOutParameter(2, OracleTypes.CURSOR);
st.execute()
ResultSet rs = ((OracleCallableStatement)st).getCursor(2);
Calling st.getResultSetConcurrency() returns ResultSet.CONCUR_UPDATABLE, but calling rs.getConcurrency() returns ResultSet.CONCUR_READ_ONLY! If I try to use any of the update methods, obviously I get a SQLException.
Does Oracle not support the use of updatable ResultSets in this context or am I doing something wrong?