DBA > Job Interview Questions > DERBY Java Database FAQs

How to name or accesse the Name of a Cursor?

More DBA job interview questions and answers at http://dba.fyicenter.com/Interview-Questions/

(Continued from previous question...)

How to name or accesse the Name of a Cursor?

There is no SQL language command to assign a name to a cursor. You can use the JDBC setCursorName method to assign a name to a ResultSet that allows positioned updates and deletes. You assign a name to a ResultSet with the setCursorName method of the Statement interface. You assign the name to a cursor before executing the Statement that will generate it.

Statement s3 = conn.createStatement();
// name the statement so we can reference the result set
// it generates
s3.setCursorName("UPDATABLESTATEMENT");
// we will be able to use the following statement later
//to access the current row of the cursor
PreparedStatement ps2 = conn.prepareStatement(
"UPDATE FlightBookings SET number_seats = ? " +
"WHERE CURRENT OF UPDATABLESTATEMENT");

More typically, you do not assign a name to the cursor, but let the system generate one for you automatically. You can determine the system-generated cursor name of a ResultSet generated by a SELECT statement using the ResultSet class's getCursorName method.

PreparedStatement ps2 = conn.prepareStatement(
"UPDATE employee SET bonus = ? WHERE CURRENT OF "+
Updatable.getCursorName());

(Continued on next question...)

Other Job Interview Questions