Getting the Cursor Position in a Scrollable Result Set
try {
// Create a scrollable result set
Statement stmt = connection.createStatement(
ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
ResultSet resultSet = stmt.executeQuery("SELECT * FROM my_table");
// Get cursor position
int pos = resultSet.getRow(); // 0
boolean b = resultSet.isBeforeFirst(); // true
// Move cursor to the first row
resultSet.next();
// Get cursor position
pos = resultSet.getRow(); // 1
b = resultSet.isFirst(); // true
// Move cursor to the last row
resultSet.last();
// Get cursor position
pos = resultSet.getRow(); // If table has 10 rows, value would be 10
b = resultSet.isLast(); // true
// Move cursor past last row
resultSet.afterLast();
// Get cursor position
pos = resultSet.getRow(); // If table has 10 rows, value would be 11
b = resultSet.isAfterLast(); // true
} catch (SQLException e) {
}
Post a comment