Determining If a Database Supports Scrollable Result Sets

A scrollable result set allows the cursor to be moved to any row in the result set. This capability is useful for GUI tools that browse result sets.

There are two types of scrollable result sets. An insensitive scrollable result set is one where the values captured in the result set never change, even if changes are made to the table from which the data was retrieved. A sensitive scrollable result set is one where the current values in the table are reflected in the result set. So if a change is made to a row in the table, the result set will show the new data when the cursor is moved to that row.

try { DatabaseMetaData dmd = connection.getMetaData(); if (dmd.supportsResultSetType(ResultSet.TYPE_SCROLL_INSENSITIVE)) { // Insensitive scrollable result sets are supported } if (dmd.supportsResultSetType(ResultSet.TYPE_SCROLL_SENSITIVE)) { // Sensitive scrollable result sets are supported } if (!dmd.supportsResultSetType(ResultSet.TYPE_SCROLL_INSENSITIVE) && !dmd.supportsResultSetType(ResultSet.TYPE_SCROLL_SENSITIVE)) { // Updatable result sets are not supported } } catch (SQLException e) { }

Post a comment

More information about formatting options

CAPTCHA
This question is for testing whether you are a human visitor and to prevent automated spam submissions.
Image CAPTCHA
Enter the characters shown in the image. Ignore spaces and be careful about upper and lower case.