Determine if a ResultSet is scrollable

This is an example of how to determine if a ResultSet is Scrollable. Checking if a ResultSet is scrollable or not implies that you should:

  • Load the JDBC driver, using the forName(String className) API method of the Class. In this example we use the MySQL JDBC driver.
  • Create a Connection to the database. Invoke the getConnection(String url, String user, String password) API method DriverManager to create the connection.
  • Create a Statement, using the createStatement() API method of the Connection.
  • Execute the query to the database, using the executeQuery(String sql) API method of the Statement. The results of the query are set in a ResultSet.
  • Invoke the getType() API method of the ResultSet, in order to get the type of the result set. If the type is equal to TYPE_SCROLL_INSENSITIVE or TYPE_SCROLL_SENSITIVE, then the Result set is scrollable.

Let’s take a look at the code snippet that follows:

package com.javacodegeeks.snippets.core;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class DetermineScrollableResultSet {
  public static void main(String[] args) {

    Connection connection = null;
    try {

  // Load the MySQL JDBC driver

  String driverName = "com.mysql.jdbc.Driver";


  // Create a connection to the database

  String serverName = "localhost";

  String schema = "test";

  String url = "jdbc:mysql://" + serverName +  "/" + schema;

  String username = "username";

  String password = "password";

  connection = DriverManager.getConnection(url, username, password);


  System.out.println("Successfully Connected to the database!");

    } catch (ClassNotFoundException e) {

  System.out.println("Could not find the database driver " + e.getMessage());
    } catch (SQLException e) {

  System.out.println("Could not connect to the database " + e.getMessage());

    try {

  // Get a result set containing all data from test_table

  Statement statement = connection.createStatement();

  ResultSet results = statement.executeQuery("SELECT * FROM test_table");

  // Get type of the result set

  int type = results.getType();

  if (type == ResultSet.TYPE_SCROLL_INSENSITIVE || type == ResultSet.TYPE_SCROLL_SENSITIVE) {

System.out.println("Result set is scrollable");

  } else {

System.out.println("Result set is not scrollable");


    } catch (SQLException e) {

  System.out.println("Could not retrieve data from the database " + e.getMessage());


Example Output:

Successfully Connected to the database!
Result set is not scrollable

This was an example of how to determine if a ResultSet is Scrollable in Java.

Ilias Tsagklis

Ilias is a software developer turned online entrepreneur. He is co-founder and Executive Editor at Java Code Geeks.
Notify of

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Inline Feedbacks
View all comments
Back to top button