java.sql

Interface ResultSet

Known Subinterfaces:
RowSet

public interface ResultSet

This interface provides access to the data set returned by a SQL statement. An instance of this interface is returned by the various execution methods in the Statement.

This class models a cursor, which can be stepped through one row at a time. Methods are provided for accessing columns by column name or by index.

Note that a result set is invalidated if the statement that returned it is closed.

Field Summary

static int
CLOSE_CURSORS_AT_COMMIT
static int
CONCUR_READ_ONLY
The concurrency mode of for the result set may not be modified.
static int
CONCUR_UPDATABLE
The concurrency mode of for the result set may be modified.
static int
FETCH_FORWARD
The rows will be processed in order from first to last.
static int
FETCH_REVERSE
The rows will be processed in order from last to first.
static int
FETCH_UNKNOWN
The rows will be processed in an unknown order
static int
HOLD_CURSORS_OVER_COMMIT
static int
TYPE_FORWARD_ONLY
This type of result set may only step forward through the rows returned.
static int
TYPE_SCROLL_INSENSITIVE
This type of result set is scrollable and is not sensitive to changes made by other statements.
static int
TYPE_SCROLL_SENSITIVE
This type of result set is scrollable and is also sensitive to changes made by other statements.

Method Summary

boolean
absolute(int row)
This method positions the result set to the specified absolute row.
void
afterLast()
This method repositions the cursor to after the last row in the result set.
void
beforeFirst()
This method repositions the cursor to before the first row in the result set.
void
cancelRowUpdates()
This method cancels any changes that have been made to a row.
void
clearWarnings()
This method clears all warnings associated with this result set.
void
close()
This method closes the result set and frees any associated resources.
void
deleteRow()
This method deletes the current row in the database.
int
findColumn(String columnName)
This method returns the column index of the specified named column.
boolean
first()
This method repositions the cursor on the first row in the result set.
Array
getArray(int columnIndex)
This method returns the specified column value as an Array.
Array
getArray(String columnName)
This method returns the specified column value as an Array.
InputStream
getAsciiStream(int columnIndex)
This method returns the value of the specified column as an ASCII stream.
InputStream
getAsciiStream(String columnName)
This method returns the value of the specified column as an ASCII stream.
BigDecimal
getBigDecimal(int columnIndex)
This method returns the value of the specified column as a Java BigDecimal.
BigDecimal
getBigDecimal(int columnIndex, int scale)
Deprecated.
BigDecimal
getBigDecimal(String columnName)
This method returns the value of the specified column as a Java BigDecimal.
BigDecimal
getBigDecimal(String columnName, int scale)
Deprecated.
InputStream
getBinaryStream(int columnIndex)
This method returns the value of the specified column as a raw byte stream.
InputStream
getBinaryStream(String columnName)
This method returns the value of the specified column as a raw byte stream.
Blob
getBlob(int columnIndex)
This method returns the specified column value as a BLOB.
Blob
getBlob(String columnName)
This method returns the specified column value as a BLOB.
boolean
getBoolean(int columnIndex)
This method returns the value of the specified column as a Java boolean.
boolean
getBoolean(String columnName)
This method returns the value of the specified column as a Java boolean.
byte
getByte(int columnIndex)
This method returns the value of the specified column as a Java byte.
byte
getByte(String columnName)
This method returns the value of the specified column as a Java byte.
byte[]
getBytes(int columnIndex)
This method returns the value of the specified column as a Java byte array.
byte[]
getBytes(String columnName)
This method returns the value of the specified column as a Java byte array.
Reader
getCharacterStream(int columnIndex)
This method returns the value of the specified column as a character stream.
Reader
getCharacterStream(String columnName)
This method returns the value of the specified column as a character stream.
Clob
getClob(int columnIndex)
This method returns the specified column value as a CLOB.
Clob
getClob(String columnName)
This method returns the specified column value as a CLOB.
int
getConcurrency()
This method returns the concurrency type of this result set.
String
getCursorName()
This method returns the name of the database cursor used by this result set.
Date
getDate(int columnIndex)
This method returns the value of the specified column as a Java java.sql.Date.
Date
getDate(int columnIndex, Calendar cal)
This method returns the specified column value as a java.sql.Date.
Date
getDate(String columnName)
This method returns the value of the specified column as a Java java.sql.Date.
Date
getDate(String columnName, Calendar cal)
This method returns the specified column value as a java.sql.Date.
double
getDouble(int columnIndex)
This method returns the value of the specified column as a Java double.
double
getDouble(String columnName)
This method returns the value of the specified column as a Java double.
int
getFetchDirection()
This method returns the current fetch direction for this result set.
int
getFetchSize()
This method returns the current number of rows that will be fetched from the database at a time.
float
getFloat(int columnIndex)
This method returns the value of the specified column as a Java float.
float
getFloat(String columnName)
This method returns the value of the specified column as a Java float.
int
getInt(int columnIndex)
This method returns the value of the specified column as a Java int.
int
getInt(String columnName)
This method returns the value of the specified column as a Java int.
long
getLong(int columnIndex)
This method returns the value of the specified column as a Java long.
long
getLong(String columnName)
This method returns the value of the specified column as a Java long.
ResultSetMetaData
getMetaData()
This method returns data about the columns returned as part of the result set as a ResultSetMetaData instance.
Object
getObject(int columnIndex)
This method returns the value of the specified column as a Java Object.
Object
getObject(int columnIndex, Map> map)
This method returns the value of the specified column as a Java Object using the specified SQL type to Java type map.
Object
getObject(String columnName)
This method returns the value of the specified column as a Java Object.
Object
getObject(String columnName, Map> map)
This method returns the value of the specified column as a Java Object using the specified SQL type to Java type map.
Ref
getRef(int columnIndex)
This method returns a Ref for the specified column which represents the structured type for the column.
Ref
getRef(String columnName)
This method returns a Ref for the specified column which represents the structured type for the column.
int
getRow()
This method returns the current row number in the cursor.
short
getShort(int columnIndex)
This method returns the value of the specified column as a Java short.
short
getShort(String columnName)
This method returns the value of the specified column as a Java short.
Statement
getStatement()
This method returns a the Statement that was used to produce this result set.
String
getString(int columnIndex)
This method returns the value of the specified column as a Java String.
String
getString(String columnName)
This method returns the value of the specified column as a Java String.
Time
getTime(int columnIndex)
This method returns the value of the specified column as a Java java.sql.Time.
Time
getTime(int columnIndex, Calendar cal)
This method returns the specified column value as a java.sql.Time.
Time
getTime(String columnName)
This method returns the value of the specified column as a Java java.sql.Time.
Time
getTime(String columnName, Calendar cal)
This method returns the specified column value as a java.sql.Time.
Timestamp
getTimestamp(int columnIndex)
This method returns the value of the specified column as a Java java.sql.Timestamp.
Timestamp
getTimestamp(int columnIndex, Calendar cal)
This method returns the specified column value as a java.sql.Timestamp.
Timestamp
getTimestamp(String columnName)
This method returns the value of the specified column as a Java java.sql.Timestamp.
Timestamp
getTimestamp(String columnName, Calendar cal)
This method returns the specified column value as a java.sql.Timestamp.
int
getType()
This method returns the result set type of this result set.
URL
getURL(int columnIndex)
This method returns the specified column value as a java.net.URL.
URL
getURL(String columnName)
This method returns the specified column value as a java.net.URL.
InputStream
getUnicodeStream(int columnIndex)
Deprecated. Use getCharacterStream instead.
InputStream
getUnicodeStream(String columnName)
Deprecated. Use getCharacterStream instead.
SQLWarning
getWarnings()
This method returns the first SQL warning associated with this result set.
void
insertRow()
This method inserts the current row into the database.
boolean
isAfterLast()
This method tests whether or not the cursor is after the last row in the result set.
boolean
isBeforeFirst()
This method tests whether or not the cursor is before the first row in the result set.
boolean
isFirst()
This method tests whether or not the cursor is positioned on the first row in the result set.
boolean
isLast()
This method tests whether or not the cursor is on the last row in the result set.
boolean
last()
This method repositions the cursor on the last row in the result set.
void
moveToCurrentRow()
This method moves the result set position from the insert row back to the current row that was selected prior to moving to the insert row.
void
moveToInsertRow()
This method positions the result set to the "insert row", which allows a new row to be inserted into the database from the result set.
boolean
next()
This method advances to the next row in the result set.
boolean
previous()
This method moves the current position to the previous row in the result set.
void
refreshRow()
This method refreshes the contents of the current row from the database.
boolean
relative(int rows)
This method moves the result set position relative to the current row.
boolean
rowDeleted()
This method tests whether or not the current row in the result set has been deleted.
boolean
rowInserted()
This method tests whether or not the current row in the result set has been inserted.
boolean
rowUpdated()
This method tests whether or not the current row in the result set has been updated.
void
setFetchDirection(int direction)
This method provides a hint to the driver about which direction the result set will be processed in.
void
setFetchSize(int rows)
This method provides a hint to the driver about how many rows at a time it should fetch from the database.
void
updateArray(int columnIndex, Array value)
This method updates the specified column to have a java.sqlArray value.
void
updateArray(String columnName, Array value)
This method updates the specified column to have a java.sqlArray value.
void
updateAsciiStream(int columnIndex, InputStream stream, int count)
This method updates the specified column from an ASCII text stream.
void
updateAsciiStream(String columnName, InputStream stream, int count)
This method updates the specified column from an ASCII text stream.
void
updateBigDecimal(int columnIndex, BigDecimal value)
This method updates the specified column to have a BigDecimal value.
void
updateBigDecimal(String columnName, BigDecimal value)
This method updates the specified column to have a BigDecimal value.
void
updateBinaryStream(int columnIndex, InputStream stream, int count)
This method updates the specified column from a binary stream.
void
updateBinaryStream(String columnName, InputStream stream, int count)
This method updates the specified column from a binary stream.
void
updateBlob(int columnIndex, Blob value)
This method updates the specified column to have a java.sql.Blob value.
void
updateBlob(String columnName, Blob value)
This method updates the specified column to have a java.sql.Blob value.
void
updateBoolean(int columnIndex, boolean value)
This method updates the specified column to have a boolean value.
void
updateBoolean(String columnName, boolean value)
This method updates the specified column to have a boolean value.
void
updateByte(int columnIndex, byte value)
This method updates the specified column to have a byte value.
void
updateByte(String columnName, byte value)
This method updates the specified column to have a byte value.
void
updateBytes(int columnIndex, byte[] value)
This method updates the specified column to have a byte array value.
void
updateBytes(String columnName, byte[] value)
This method updates the specified column to have a byte array value.
void
updateCharacterStream(int columnIndex, Reader reader, int count)
This method updates the specified column from a character stream.
void
updateCharacterStream(String columnName, Reader reader, int count)
This method updates the specified column from a character stream.
void
updateClob(int columnIndex, Clob value)
This method updates the specified column to have a java.sql.Clob value.
void
updateClob(String columnName, Clob value)
This method updates the specified column to have a java.sql.Clob value.
void
updateDate(int columnIndex, Date value)
This method updates the specified column to have a java.sql.Date value.
void
updateDate(String columnName, Date value)
This method updates the specified column to have a java.sql.Date value.
void
updateDouble(int columnIndex, double value)
This method updates the specified column to have a double value.
void
updateDouble(String columnName, double value)
This method updates the specified column to have a double value.
void
updateFloat(int columnIndex, float value)
This method updates the specified column to have a float value.
void
updateFloat(String columnName, float value)
This method updates the specified column to have a float value.
void
updateInt(int columnIndex, int value)
This method updates the specified column to have an int value.
void
updateInt(String columnName, int value)
This method updates the specified column to have an int value.
void
updateLong(int columnIndex, long value)
This method updates the specified column to have a long value.
void
updateLong(String columnName, long value)
This method updates the specified column to have a long value.
void
updateNull(int columnIndex)
This method updates the specified column to have a NULL value.
void
updateNull(String columnName)
This method updates the specified column to have a NULL value.
void
updateObject(int columnIndex, Object value)
This method updates the specified column to have an Object value.
void
updateObject(int columnIndex, Object value, int scale)
This method updates the specified column to have an Object value.
void
updateObject(String columnName, Object value)
This method updates the specified column to have an Object value.
void
updateObject(String columnName, Object value, int scale)
This method updates the specified column to have an Object value.
void
updateRef(int columnIndex, Ref value)
This method updates the specified column to have a java.sql.Ref value.
void
updateRef(String columnName, Ref value)
This method updates the specified column to have a java.sql.Ref value.
void
updateRow()
This method updates the current row in the database.
void
updateShort(int columnIndex, short value)
This method updates the specified column to have a short value.
void
updateShort(String columnName, short value)
This method updates the specified column to have a short value.
void
updateString(int columnIndex, String value)
This method updates the specified column to have a String value.
void
updateString(String columnName, String value)
This method updates the specified column to have a String value.
void
updateTime(int columnIndex, Time value)
This method updates the specified column to have a java.sql.Time value.
void
updateTime(String columnName, Time value)
This method updates the specified column to have a java.sql.Time value.
void
updateTimestamp(int columnIndex, Timestamp value)
This method updates the specified column to have a java.sql.Timestamp value.
void
updateTimestamp(String columnName, Timestamp value)
This method updates the specified column to have a java.sql.Timestamp value.
boolean
wasNull()
This method tests whether the value of the last column that was fetched was actually a SQL NULL value.

Field Details

CLOSE_CURSORS_AT_COMMIT

public static final int CLOSE_CURSORS_AT_COMMIT
Field Value:
2

CONCUR_READ_ONLY

public static final int CONCUR_READ_ONLY
The concurrency mode of for the result set may not be modified.
Field Value:
1007

CONCUR_UPDATABLE

public static final int CONCUR_UPDATABLE
The concurrency mode of for the result set may be modified.
Field Value:
1008

FETCH_FORWARD

public static final int FETCH_FORWARD
The rows will be processed in order from first to last.
Field Value:
1000

FETCH_REVERSE

public static final int FETCH_REVERSE
The rows will be processed in order from last to first.
Field Value:
1001

FETCH_UNKNOWN

public static final int FETCH_UNKNOWN
The rows will be processed in an unknown order
Field Value:
1002

HOLD_CURSORS_OVER_COMMIT

public static final int HOLD_CURSORS_OVER_COMMIT
Field Value:
1

TYPE_FORWARD_ONLY

public static final int TYPE_FORWARD_ONLY
This type of result set may only step forward through the rows returned.
Field Value:
1003

TYPE_SCROLL_INSENSITIVE

public static final int TYPE_SCROLL_INSENSITIVE
This type of result set is scrollable and is not sensitive to changes made by other statements.
Field Value:
1004

TYPE_SCROLL_SENSITIVE

public static final int TYPE_SCROLL_SENSITIVE
This type of result set is scrollable and is also sensitive to changes made by other statements.
Field Value:
1005

Method Details

absolute

public boolean absolute(int row)
            throws SQLException
This method positions the result set to the specified absolute row. Positive numbers are row offsets from the beginning of the result set (numbering starts from row 1) and negative numbers are row offsets from the end of the result set (numbering starts from -1).
Parameters:
row - The row to position the result set to.
Returns:
true if the current position was changed, false otherwise.
Throws:
SQLException - If an error occurs.

afterLast

public void afterLast()
            throws SQLException
This method repositions the cursor to after the last row in the result set.
Throws:
SQLException - If an error occurs.

beforeFirst

public void beforeFirst()
            throws SQLException
This method repositions the cursor to before the first row in the result set.
Throws:
SQLException - If an error occurs.

cancelRowUpdates

public void cancelRowUpdates()
            throws SQLException
This method cancels any changes that have been made to a row. If the rowUpdate method has been called, then the changes cannot be undone.
Throws:
SQLException - If an error occurs.

clearWarnings

public void clearWarnings()
            throws SQLException
This method clears all warnings associated with this result set.
Throws:
SQLException - If an error occurs.

close

public void close()
            throws SQLException
This method closes the result set and frees any associated resources.
Throws:
SQLException - If an error occurs.

deleteRow

public void deleteRow()
            throws SQLException
This method deletes the current row in the database.
Throws:
SQLException - If an error occurs.

findColumn

public int findColumn(String columnName)
            throws SQLException
This method returns the column index of the specified named column.
Parameters:
columnName - The name of the column.
Returns:
The index of the column.
Throws:
SQLException - If an error occurs.

first

public boolean first()
            throws SQLException
This method repositions the cursor on the first row in the result set.
Returns:
true if the cursor is on a valid row; false if there are no rows in the result set.
Throws:
SQLException - If an error occurs.

getArray

public Array getArray(int columnIndex)
            throws SQLException
This method returns the specified column value as an Array.
Parameters:
columnIndex - The index of the column value to return.
Returns:
The value of the column as an Array.
Throws:
SQLException - If an error occurs.

getArray

public Array getArray(String columnName)
            throws SQLException
This method returns the specified column value as an Array.
Parameters:
columnName - The name of the column value to return.
Returns:
The value of the column as an Array.
Throws:
SQLException - If an error occurs.

getAsciiStream

public InputStream getAsciiStream(int columnIndex)
            throws SQLException
This method returns the value of the specified column as an ASCII stream. Note that all the data from this stream must be read before fetching the value of any other column. Please also be aware that calling next() or close() on this result set will close this stream as well.
Parameters:
columnIndex - The index of the column to return.
Returns:
The column value as an ASCII InputStream.
Throws:
SQLException - If an error occurs.

getAsciiStream

public InputStream getAsciiStream(String columnName)
            throws SQLException
This method returns the value of the specified column as an ASCII stream. Note that all the data from this stream must be read before fetching the value of any other column. Please also be aware that calling next() or close() on this result set will close this stream as well.
Parameters:
columnName - The name of the column to return.
Returns:
The column value as an ASCII InputStream.
Throws:
SQLException - If an error occurs.

getBigDecimal

public BigDecimal getBigDecimal(int columnIndex)
            throws SQLException
This method returns the value of the specified column as a Java BigDecimal.
Parameters:
columnIndex - The index of the column to return.
Returns:
The column value as a BigDecimal.
Throws:
SQLException - If an error occurs.

getBigDecimal

public BigDecimal getBigDecimal(int columnIndex,
                                int scale)
            throws SQLException

Deprecated.

This method returns the value of the specified column as a Java BigDecimal.
Parameters:
columnIndex - The index of the column to return.
scale - The number of digits to the right of the decimal to return.
Returns:
The column value as a BigDecimal.
Throws:
SQLException - If an error occurs.

getBigDecimal

public BigDecimal getBigDecimal(String columnName)
            throws SQLException
This method returns the value of the specified column as a Java BigDecimal.
Parameters:
columnName - The name of the column to return.
Returns:
The column value as a BigDecimal.
Throws:
SQLException - If an error occurs.

getBigDecimal

public BigDecimal getBigDecimal(String columnName,
                                int scale)
            throws SQLException

Deprecated.

This method returns the value of the specified column as a Java BigDecimal.
Parameters:
columnName - The name of the column to return.
Returns:
The column value as a BigDecimal.
Throws:
SQLException - If an error occurs.

getBinaryStream

public InputStream getBinaryStream(int columnIndex)
            throws SQLException
This method returns the value of the specified column as a raw byte stream. Note that all the data from this stream must be read before fetching the value of any other column. Please also be aware that calling next() or close() on this result set will close this stream as well.
Parameters:
columnIndex - The index of the column to return.
Returns:
The column value as a raw byte InputStream.
Throws:
SQLException - If an error occurs.

getBinaryStream

public InputStream getBinaryStream(String columnName)
            throws SQLException
This method returns the value of the specified column as a raw byte stream. Note that all the data from this stream must be read before fetching the value of any other column. Please also be aware that calling next() or close() on this result set will close this stream as well.
Parameters:
columnName - The name of the column to return.
Returns:
The column value as a raw byte InputStream.
Throws:
SQLException - If an error occurs.

getBlob

public Blob getBlob(int columnIndex)
            throws SQLException
This method returns the specified column value as a BLOB.
Parameters:
columnIndex - The index of the column value to return.
Returns:
The value of the column as a BLOB.
Throws:
SQLException - If an error occurs.

getBlob

public Blob getBlob(String columnName)
            throws SQLException
This method returns the specified column value as a BLOB.
Parameters:
columnName - The name of the column value to return.
Returns:
The value of the column as a BLOB.
Throws:
SQLException - If an error occurs.

getBoolean

public boolean getBoolean(int columnIndex)
            throws SQLException
This method returns the value of the specified column as a Java boolean.
Parameters:
columnIndex - The index of the column to return.
Returns:
The column value as a boolean.
Throws:
SQLException - If an error occurs.

getBoolean

public boolean getBoolean(String columnName)
            throws SQLException
This method returns the value of the specified column as a Java boolean.
Parameters:
columnName - The name of the column to return.
Returns:
The column value as a boolean.
Throws:
SQLException - If an error occurs.

getByte

public byte getByte(int columnIndex)
            throws SQLException
This method returns the value of the specified column as a Java byte.
Parameters:
columnIndex - The index of the column to return.
Returns:
The column value as a byte.
Throws:
SQLException - If an error occurs.

getByte

public byte getByte(String columnName)
            throws SQLException
This method returns the value of the specified column as a Java byte.
Parameters:
columnName - The name of the column to return.
Returns:
The column value as a byte.
Throws:
SQLException - If an error occurs.

getBytes

public byte[] getBytes(int columnIndex)
            throws SQLException
This method returns the value of the specified column as a Java byte array.
Parameters:
columnIndex - The index of the column to return.
Returns:
The column value as a byte array
Throws:
SQLException - If an error occurs.

getBytes

public byte[] getBytes(String columnName)
            throws SQLException
This method returns the value of the specified column as a Java byte array.
Parameters:
columnName - The name of the column to return.
Returns:
The column value as a byte array
Throws:
SQLException - If an error occurs.

getCharacterStream

public Reader getCharacterStream(int columnIndex)
            throws SQLException
This method returns the value of the specified column as a character stream. Note that all the data from this stream must be read before fetching the value of any other column. Please also be aware that calling next() or close() on this result set will close this stream as well.
Parameters:
columnIndex - The index of the column to return.
Returns:
The column value as an character Reader.
Throws:
SQLException - If an error occurs.

getCharacterStream

public Reader getCharacterStream(String columnName)
            throws SQLException
This method returns the value of the specified column as a character stream. Note that all the data from this stream must be read before fetching the value of any other column. Please also be aware that calling next() or close() on this result set will close this stream as well.
Parameters:
columnName - The name of the column to return.
Returns:
The column value as an character Reader.
Throws:
SQLException - If an error occurs.

getClob

public Clob getClob(int columnIndex)
            throws SQLException
This method returns the specified column value as a CLOB.
Parameters:
columnIndex - The index of the column value to return.
Returns:
The value of the column as a CLOB.
Throws:
SQLException - If an error occurs.

getClob

public Clob getClob(String columnName)
            throws SQLException
This method returns the specified column value as a CLOB.
Parameters:
columnName - The name of the column value to return.
Returns:
The value of the column as a CLOB.
Throws:
SQLException - If an error occurs.

getConcurrency

public int getConcurrency()
            throws SQLException
This method returns the concurrency type of this result set. This will be one of the CONCUR_* constants defined in this interface.
Returns:
The result set concurrency type.
Throws:
SQLException - If an error occurs.

getCursorName

public String getCursorName()
            throws SQLException
This method returns the name of the database cursor used by this result set.
Returns:
The name of the database cursor used by this result set.
Throws:
SQLException - If an error occurs.

getDate

public Date getDate(int columnIndex)
            throws SQLException
This method returns the value of the specified column as a Java java.sql.Date.
Parameters:
columnIndex - The index of the column to return.
Returns:
The column value as a java.sql.Date.
Throws:
SQLException - If an error occurs.

getDate

public Date getDate(int columnIndex,
                    Calendar cal)
            throws SQLException
This method returns the specified column value as a java.sql.Date. The specified Calendar is used to generate a value for the date if the database does not support timezones.
Parameters:
columnIndex - The index of the column value to return.
cal - The Calendar to use for calculating timezones.
Returns:
The value of the column as a java.sql.Date.
Throws:
SQLException - If an error occurs.

getDate

public Date getDate(String columnName)
            throws SQLException
This method returns the value of the specified column as a Java java.sql.Date.
Parameters:
columnName - The name of the column to return.
Returns:
The column value as a java.sql.Date.
Throws:
SQLException - If an error occurs.

getDate

public