JDBC Tutorials - Herong's Tutorial Examples - v3.14, by Herong Yang
ResultSet Default Type: Forward-only
This section describes ResultSet default type: forward-only, which supports only next() method to move the cursor forward one row at a time.
Another way to move the cursor to the first row on a new ResultSet object is to call res.first(). But first() is not supported on ResultSet objects of the default type, TYPE_FORWARD_ONLY. The following sample program shows you the error message that you will get if you call first() on forward only ResultSet objects:
/* DerbyResultSetFirst.java * Copyright (c) HerongYang.com. All Rights Reserved. */ import java.sql.*; public class DerbyResultSetFirst { public static void main(String [] args) { Connection con = null; try { con = DriverManager.getConnection("jdbc:derby://localhost/TestDB"); Statement sta = con.createStatement(); // Catch the ResultSet object ResultSet res = sta.executeQuery("SELECT * FROM Profile"); // first() is not allowed on forward-only ResultSet objects res.first(); // Try to get column values String firstName = res.getString("FirstName"); String lastName = res.getString("LastName"); // Close ResultSet res.close(); sta.close(); con.close(); } catch (Exception e) { System.err.println("Exception: "+e.getMessage()); } } }
Run this program to see the error if res.first() is called on forward only ResultSet objects:
Exception: This method should only be called on ResultSet objects that are scrollable (type TYPE_SCROLL_SENSITIVE or TYPE_SCROLL_INSENSITIVE).
Table of Contents
JDBC (Java Database Connectivity) Introduction
Installing and Running Derby (Java DB)
Derby (Java DB) JDBC DataSource Objects
Derby (Java DB) - DML Statements
►Derby (Java DB) - ResultSet Objects of Queries
ResultSet Cursor and Scrollability
ResultSet Cursor Initial Position: Before First Row
Retrieving Column Values with getXXX() Methods
►ResultSet Default Type: Forward-only
Scrollable ResultSet and Moving Cursor Backward
ResultSet Objects with Update Capability
insertRow() - Inserting New Rows through ResultSet Objects
updateXXX() - Updating Column Values for Row Update or Insert
deleteRow() - Deleting Rows through ResultSet Objects
Derby (Java DB) - PreparedStatement
Summary of JDBC Drivers and Database Servers