O'Reilly logo

Java Programming with Oracle JDBC by Donald Bales

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Scrollable, Updateable Result Sets

With JDBC 1.0, all result sets could scroll only forward and were read-only. With JDBC 2.0, result sets can scroll in both directions and position the cursor randomly. They are also updateable. To implement this functionality, the Connection object’s createStatement( ) method was overloaded with the following signature:

Statement createStatement(
 int resultSetType,
 int resultSetConcurrency)

For resultSetType, there are three possible ResultSet constants you can use:

TYPE_FORWARD_ONLY

A forward-only cursor.

TYPE_SCROLL_INSENSITIVE

A scrollable, positionable result set that is not sensitive to changes made to the database while the ResultSet object is open. You would have to create a new ResultSet object to see changes made to the database.

TYPE_SCROLL_SENSITIVE

A scrollable, positionable result set that can see changes made to the database while the ResultSet object is open. Changes made at the database level to any of the column values in the result set are visible.

For resultSetConcurrency, there are two possible ResultSet constants you can use:

CONCUR_READ_ONLY

A read-only ResultSet

CONCUR_UPDATABLE

An updateable ResultSet

Since scrollability and sensitivity are independent of updateability, we end up with six possible ResultSet categories:

Forward-only/read-only
Forward-only/updateable
Scroll-insensitive/read-only
Scroll-insensitive/updateable
Scroll-sensitive/read-only
Scroll-sensitive/updateable

Oracle implements scrollability by using a client-side ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required