|
JavaTM 2 Platform Std. Ed. v1.3.1 |
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
A table of data representing a database result set, which is usually generated by executing a statement that queries the database.
A ResultSet object maintains a cursor pointing
to its current row of data. Initially the cursor is positioned
before the first row. The next method moves the
cursor to the next row, and because it returns false
when there are no more rows in the ResultSet object,
it can be used in a while loop to iterate through
the result set.
A default ResultSet object is not updatable and
has a cursor that moves forward only. Thus, it is possible to
iterate through it only once and only from the first row to the
last row. New methods in the JDBC 2.0 API make it possible to
produce ResultSet objects that are scrollable and/or
updatable. The following code fragment, in which con
is a valid Connection object, illustrates how to make
a result set that is scrollable and insensitive to updates by others, and
that is updatable. See ResultSet fields for other
options.
Statement stmt = con.createStatement(
ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_UPDATABLE);
ResultSet rs = stmt.executeQuery("SELECT a, b FROM TABLE2");
// rs will be scrollable, will not show changes made by others,
// and will be updatable
The ResultSet interface provides
getXXX methods for retrieving column values from
the current row.
Values can be retrieved using either the index number of the
column or the name of the column. In general, using the
column index will be more efficient. Columns are numbered from 1.
For maximum portability, result set columns within each row should be
read in left-to-right order, and each column should be read only once.
For the getXXX methods, a JDBC driver attempts
to convert the underlying data to the Java type specified in the
XXX part of the getXXX method and
returns a suitable Java value. The JDBC specification
has a table showing the allowable mappings
from SQL types to Java types with the ResultSet.getXXX
methods.
Column names used as input to getXXX methods are case
insensitive. When a getXXX method is called with
a column name and several columns have the same name,
the value of the first matching column will be returned.
The column name option is
designed to be used when column names are used in the SQL
query that generated the result set.
For columns that are NOT explicitly named in the query, it
is best to use column numbers. If column names are used, there is
no way for the programmer to guarantee that they actually refer to
the intended columns.
A set of updateXXX methods were added to this interface
in the JDBC 2.0 API (JavaTM 2 SDK,
Standard Edition, version 1.2). The comments regarding parameters
to the getXXX methods also apply to parameters to the
updateXXX methods.
The updateXXX methods may be used in two ways:
ResultSet object, the cursor can be moved backwards
and forwards, to an absolute position, or to a position
relative to the current row.
The following code fragment updates the NAME column
in the fifth row of the ResultSet object
rs and then uses the method updateRow
to update the data source table from which rs was derived.
rs.absolute(5); // moves the cursor to the fifth row of rs
rs.updateString("NAME", "AINSWORTH"); // updates the
// NAME column of row 5 to be AINSWORTH
rs.updateRow(); // updates the row in the data source
ResultSet object has a special row associated with
it that serves as a staging area for building a row to be inserted.
The following code fragment moves the cursor to the insert row, builds
a three-column row, and inserts it into rs and into
the data source table using the method insertRow.
rs.moveToInsertRow(); // moves cursor to the insert row
rs.updateString(1, "AINSWORTH"); // updates the
// first column of the insert row to be AINSWORTH
rs.updateInt(2,35); // updates the second column to be 35
rs.updateBoolean(3, true); // updates the third row to true
rs.insertRow();
rs.moveToCurrentRow();
A ResultSet object is automatically closed when the
Statement object that
generated it is closed, re-executed, or used
to retrieve the next result from a sequence of multiple results.
The number, types and properties of a ResultSet
object's columns are provided by the ResulSetMetaData
object returned by the ResultSet.getMetaData method.
| Field Summary | |
static int |
CONCUR_READ_ONLY
The constant indicating the concurrency mode for a ResultSet object that may NOT be updated. |
static int |
CONCUR_UPDATABLE
The constant indicating the concurrency mode for a ResultSet object that may be updated. |
static int |
FETCH_FORWARD
The constant indicating that the rows in a result set will be processed in a forward direction; first-to-last. |
static int |
FETCH_REVERSE
The constant indicating that the rows in a result set will be processed in a reverse direction; last-to-first. |
static int |
FETCH_UNKNOWN
The constant indicating that the order in which rows in a result set will be processed is unknown. |
static int |
TYPE_FORWARD_ONLY
The constant indicating the type for a ResultSet object
whose cursor may move only forward. |
static int |
TYPE_SCROLL_INSENSITIVE
The constant indicating the type for a ResultSet object
that is scrollable but generally not sensitive to changes made by others. |
static int |
TYPE_SCROLL_SENSITIVE
The constant indicating the type for a ResultSet object
that is scrollable and generally sensitive to changes made by others. |
| Method Summary | |
boolean |
absolute(int row)
Moves the cursor to the given row number in this ResultSet object. |
void |
afterLast()
Moves the cursor to the end of this ResultSet object, just after the
last row. |
void |
beforeFirst()
Moves the cursor to the front of this ResultSet object, just before the
first row. |
void |
cancelRowUpdates()
Cancels the updates made to the current row in this ResultSet object. |
void |
clearWarnings()
Clears all warnings reported on this ResultSet object. |
void |
close()
Releases this ResultSet object's database and
JDBC resources immediately instead of waiting for
this to happen when it is automatically closed. |
void |
deleteRow()
Deletes the current row from this ResultSet object
and from the underlying database. |
int |
findColumn(String columnName)
Maps the given ResultSet column name to its
ResultSet column index. |
boolean |
first()
Moves the cursor to the first row in this ResultSet object. |
Array |
getArray(int i)
Returns the value of the designated column in the current row of this ResultSet object as an Array object
in the Java programming language. |
Array |
getArray(String colName)
Returns the value of the designated column in the current row of this ResultSet object as an Array object
in the Java programming language. |
InputStream |
getAsciiStream(int columnIndex)
Gets the value of the designated column in the current row of this ResultSet object as
a stream of ASCII characters. |
InputStream |
getAsciiStream(String columnName)
Gets the value of the designated column in the current row of this ResultSet object as a stream of
ASCII characters. |
BigDecimal |
getBigDecimal(int columnIndex)
Gets the value of the designated column in the current row of this ResultSet object as a
java.math.BigDecimal with full precision. |
BigDecimal |
getBigDecimal(int columnIndex,
int scale)
Deprecated. |
BigDecimal |
getBigDecimal(String columnName)
Gets the value of the designated column in the current row of this ResultSet object as a
java.math.BigDecimal with full precision. |
BigDecimal |
getBigDecimal(String columnName,
int scale)
Deprecated. |
InputStream |
getBinaryStream(int columnIndex)
Gets the value of a column in the current row as a stream of Gets the value of the designated column in the current row of this ResultSet object as a binary stream of
uninterpreted bytes. |
InputStream |
getBinaryStream(String columnName)
Gets the value of the designated column in the current row of this ResultSet object as a stream of uninterpreted
bytes. |
Blob |
getBlob(int i)
Returns the value of the designated column in the current row of this ResultSet object as a Blob object
in the Java programming language. |
Blob |
getBlob(String colName)
Returns the value of the designated column in the current row of this ResultSet object as a Blob object
in the Java programming language. |
boolean |
getBoolean(int columnIndex)
Gets the value of the designated column in the current row of this ResultSet object as
a boolean in the Java programming language. |
boolean |
getBoolean(String columnName)
Gets the value of the designated column in the current row of this ResultSet object as
a boolean in the Java programming language. |
byte |
getByte(int columnIndex)
Gets the value of the designated column in the current row of this ResultSet object as
a byte in the Java programming language. |
byte |
getByte(String columnName)
Gets the value of the designated column in the current row of this ResultSet object as
a byte in the Java programming language. |
byte[] |
getBytes(int columnIndex)
Gets the value of the designated column in the current row of this ResultSet object as
a byte array in the Java programming language. |
byte[] |
getBytes(String columnName)
Gets the value of the designated column in the current row of this ResultSet object as
a byte array in the Java programming language. |
Reader |
getCharacterStream(int columnIndex)
Gets the value of the designated column in the current row of this ResultSet object as a
java.io.Reader object. |
Reader |
getCharacterStream(String columnName)
Gets the value of the designated column in the current row of this ResultSet object as a
java.io.Reader object. |
Clob |
getClob(int i)
Returns the value of the designated column in the current row of this ResultSet object as a Clob object
in the Java programming language. |
Clob |
getClob(String colName)
Returns the value of the designated column in the current row of this ResultSet object as a Clob object
in the Java programming language. |
int |
getConcurrency()
Returns the concurrency mode of this ResultSet object. |
String |
getCursorName()
Gets the name of the SQL cursor used by this ResultSet
object. |
Date |
getDate(int columnIndex)
Gets the value of the designated column in the current row of this ResultSet object as
a java.sql.Date object in the Java programming language. |
Date |
getDate(int columnIndex,
Calendar cal)
Returns the value of the designated column in the current row of this ResultSet object as a java.sql.Date object
in the Java programming language. |
Date |
getDate(String columnName)
Gets the value of the designated column in the current row of this ResultSet object as
a java.sql.Date object in the Java programming language. |
Date |
getDate(String columnName,
Calendar cal)
Returns the value of the designated column in the current row of this ResultSet object as a java.sql.Date object
in the Java programming language. |
double |
getDouble(int columnIndex)
Gets the value of the designated column in the current row of this ResultSet object as
a double in the Java programming language. |
double |
getDouble(String columnName)
Gets the value of the designated column in the current row of this ResultSet object as
a double in the Java programming language. |
int |
getFetchDirection()
Returns the fetch direction for this ResultSet object. |
int |
getFetchSize()
Returns the fetch size for this ResultSet object. |
float |
getFloat(int columnIndex)
Gets the value of the designated column in the current row of this ResultSet object as
a float in the Java programming language. |
float |
getFloat(String columnName)
Gets the value of the designated column in the current row of this ResultSet object as
a float in the Java programming language. |
int |
getInt(int columnIndex)
Gets the value of the designated column in the current row of this ResultSet object as
an int in the Java programming language. |
int |
getInt(String columnName)
Gets the value of the designated column in the current row of this ResultSet object as
an int in the Java programming language. |
long |
getLong(int columnIndex)
Gets the value of the designated column in the current row of this ResultSet object as
a long in the Java programming language. |
long |
getLong(String columnName)
Gets the value of the designated column in the current row of this ResultSet object as
a long in the Java programming language. |
ResultSetMetaData |
getMetaData()
Retrieves the number, types and properties of this ResultSet object's columns. |
Object |
getObject(int columnIndex)
Gets the value of the designated column in the current row of this ResultSet object as
an Object in the Java programming language. |
Object |
getObject(int i,
Map map)
Returns the value of the designated column in the current row of this ResultSet object as an Object
in the Java programming language. |
Object |
getObject(String columnName)
Gets the value of the designated column in the current row of this ResultSet object as
an Object in the Java programming language. |
Object |
getObject(String colName,
Map map)
Returns the value of the designated column in the current row of this ResultSet object as an Object
in the Java programming language. |
Ref |
getRef(int i)
Returns the value of the designated column in the current row of this ResultSet object as a Ref object
in the Java programming language. |
Ref |
getRef(String colName)
Returns the value of the designated column in the current row of this ResultSet object as a Ref object
in the Java programming language. |
int |
getRow()
Retrieves the current row number. |
short |
getShort(int columnIndex)
Gets the value of the designated column in the current row of this ResultSet object as
a short in the Java programming language. |
short |
getShort(String columnName)
Gets the value of the designated column in the current row of this ResultSet object as
a short in the Java programming language. |
Statement |
getStatement()
Returns the Statement object that produced this
ResultSet object. |
String |
getString(int columnIndex)
Gets the value of the designated column in the current row of this ResultSet object as
a String in the Java programming language. |
String |
getString(String columnName)
Gets the value of the designated column in the current row of this ResultSet object as
a String in the Java programming language. |
Time |
getTime(int columnIndex)
Gets the value of the designated column in the current row of this ResultSet object as
a java.sql.Time object in the Java programming language. |
Time |
getTime(int columnIndex,
Calendar cal)
Returns the value of the designated column in the current row of this ResultSet object as a java.sql.Time object
in the Java programming language. |
Time |
getTime(String columnName)
Gets the value of the designated column in the current row of this ResultSet object as
a java.sql.Time object in the Java programming language. |
Time |
getTime(String columnName,
Calendar cal)
Returns the value of the designated column in the current row of this ResultSet object as a java.sql.Time object
in the Java programming language. |
Timestamp |
getTimestamp(int columnIndex)
Gets the value of the designated column in the current row of this ResultSet object as
a java.sql.Timestamp object in the Java programming language. |
Timestamp |
getTimestamp(int columnIndex,
Calendar cal)
Returns the value of the designated column in the current row of this ResultSet object as a java.sql.Timestamp object
in the Java programming language. |
Timestamp |
getTimestamp(String columnName)
Gets the value of the designated column in the current row of this ResultSet object as
a java.sql.Timestamp object. |
Timestamp |
getTimestamp(String columnName,
Calendar cal)
Returns the value of the designated column in the current row of this ResultSet object as a java.sql.Timestamp object
in the Java programming language. |
int |
getType()
Returns the type of this ResultSet object. |
InputStream |
getUnicodeStream(int columnIndex)
Deprecated. use getCharacterStream in place of
getUnicodeStream |
InputStream |
getUnicodeStream(String columnName)
Deprecated. |
SQLWarning |
getWarnings()
Returns the first warning reported by calls on this ResultSet object. |
void |
insertRow()
Inserts the contents of the insert row into this ResultSet objaect and into the database. |
boolean |
isAfterLast()
Indicates whether the cursor is after the last row in this ResultSet object. |
boolean |
isBeforeFirst()
Indicates whether the cursor is before the first row in this ResultSet object. |
boolean |
isFirst()
Indicates whether the cursor is on the first row of this ResultSet object. |
boolean |
isLast()
Indicates whether the cursor is on the last row of this ResultSet object. |
boolean |
last()
Moves the cursor to the last row in this ResultSet object. |
void |
moveToCurrentRow()
Moves the cursor to the remembered cursor position, usually the current row. |
void |
moveToInsertRow()
Moves the cursor to the insert row. |
boolean |
next()
Moves the cursor down one row from its current position. |
boolean |
previous()
Moves the cursor to the previous row in this ResultSet object. |
void |
refreshRow()
Refreshes the current row with its most recent value in the database. |
boolean |
relative(int rows)
Moves the cursor a relative number of rows, either positive or negative. |
boolean |
rowDeleted()
Indicates whether a row has been deleted. |
boolean |
rowInserted()
Indicates whether the current row has had an insertion. |
boolean |
rowUpdated()
Indicates whether the current row has been updated. |
void |
setFetchDirection(int direction)
Gives a hint as to the direction in which the rows in this ResultSet object will be processed. |
void |
setFetchSize(int rows)
Gives the JDBC driver a hint as to the number of rows that should be fetched from the database when more rows are needed for this ResultSet object. |
void |
updateAsciiStream(int columnIndex,
InputStream x,
int length)
Updates the designated column with an ascii stream value. |
void |
updateAsciiStream(String columnName,
InputStream x,
int length)
Updates the designated column with an ascii stream value. |
void |
updateBigDecimal(int columnIndex,
BigDecimal x)
Updates the designated column with a java.math.BigDecimal
value. |
void |
updateBigDecimal(String columnName,
BigDecimal x)
Updates the designated column with a java.sql.BigDecimal
value. |
void |
updateBinaryStream(int columnIndex,
InputStream x,
int length)
Updates the designated column with a binary stream value. |
void |
updateBinaryStream(String columnName,
InputStream x,
int length)
Updates the designated column with a binary stream value. |
void |
updateBoolean(int columnIndex,
boolean x)
Updates the designated column with a boolean value. |
void |
updateBoolean(String columnName,
boolean x)
Updates the designated column with a boolean value. |
void |
updateByte(int columnIndex,
byte x)
Updates the designated column with a byte value. |
void |
updateByte(String columnName,
byte x)
Updates the designated column with a byte value. |
void |
updateBytes(int columnIndex,
byte[] x)
Updates the designated column with a byte array value. |
void |
updateBytes(String columnName,
byte[] x)
Updates the designated column with a boolean value. |
void |
updateCharacterStream(int columnIndex,
Reader x,
int length)
Updates the designated column with a character stream value. |
void |
updateCharacterStream(String columnName,
Reader reader,
int length)
Updates the designated column with a character stream value. |
void |
updateDate(int columnIndex,
Date x)
Updates the designated column with a java.sql.Date value. |
void |
updateDate(String columnName,
Date x)
Updates the designated column with a java.sql.Date value. |
void |
updateDouble(int columnIndex,
double x)
Updates the designated column with a double value. |
void |
updateDouble(String columnName,
double x)
Updates the designated column with a double value. |
void |
updateFloat(int columnIndex,
float x)
Updates the designated column with a float value. |
void |
updateFloat(String columnName,
float x)
Updates the designated column with a float value. |
void |
updateInt(int columnIndex,
int x)
Updates the designated column with an int value. |
void |
updateInt(String columnName,
int x)
Updates the designated column with an int value. |
void |
updateLong(int columnIndex,
long x)
Updates the designated column with a long value. |
void |
updateLong(String columnName,
long x)
Updates the designated column with a long value. |
void |
updateNull(int columnIndex)
Gives a nullable column a null value. |
void |
updateNull(String columnName)
Updates the designated column with a null value. |
void |
updateObject(int columnIndex,
Object x)
Updates the designated column with an Object value. |
void |
updateObject(int columnIndex,
Object x,
int scale)
Updates the designated column with an Object value. |
void |
updateObject(String columnName,
Object x)
Updates the designated column with an Object value. |
void |
updateObject(String columnName,
Object x,
int scale)
Updates the designated column with an Object value. |
void |
updateRow()
Updates the underlying database with the new contents of the current row of this ResultSet object. |
void |
updateShort(int columnIndex,
short x)
Updates the designated column with a short value. |
void |
updateShort(String columnName,
short x)
Updates the designated column with a short value. |
void |
updateString(int columnIndex,
String x)
Updates the designated column with a String value. |
void |
updateString(String columnName,
String x)
Updates the designated column with a String value. |
void |
updateTime(int columnIndex,
Time x)
Updates the designated column with a java.sql.Time value. |
void |
updateTime(String columnName,
Time x)
Updates the designated column with a java.sql.Time value. |
void |
updateTimestamp(int columnIndex,
Timestamp x)
Updates the designated column with a java.sql.Timestamp
value. |
void |
updateTimestamp(String columnName,
Timestamp x)
Updates the designated column with a java.sql.Timestamp
value. |
boolean |
wasNull()
Reports whether the last column read had a value of SQL NULL. |
| Field Detail |
public static final int FETCH_FORWARD
setFetchDirection
as a hint to the driver, which the driver may ignore.public static final int FETCH_REVERSE
setFetchDirection
as a hint to the driver, which the driver may ignore.public static final int FETCH_UNKNOWN
setFetchDirection
as a hint to the driver, which the driver may ignore.public static final int TYPE_FORWARD_ONLY
ResultSet object
whose cursor may move only forward.public static final int TYPE_SCROLL_INSENSITIVE
ResultSet object
that is scrollable but generally not sensitive to changes made by others.public static final int TYPE_SCROLL_SENSITIVE
ResultSet object
that is scrollable and generally sensitive to changes made by others.public static final int CONCUR_READ_ONLY
ResultSet object that may NOT be updated.public static final int CONCUR_UPDATABLE
ResultSet object that may be updated.| Method Detail |
public boolean next()
throws SQLException
ResultSet cursor is initially positioned
before the first row; the first call to the method
next makes the first row the current row; the
second call makes the second row the current row, and so on.
If an input stream is open for the current row, a call
to the method next will
implicitly close it. A ResultSet object's
warning chain is cleared when a new row is read.
true if the new current row is valid;
false if there are no more rowsSQLException - if a database access error occurs
public void close()
throws SQLException
ResultSet object's database and
JDBC resources immediately instead of waiting for
this to happen when it is automatically closed.
Note: A ResultSet object
is automatically closed by the
Statement object that generated it when
that Statement object is closed,
re-executed, or is used to retrieve the next result from a
sequence of multiple results. A ResultSet object
is also automatically closed when it is garbage collected.
SQLException - if a database access error occurs
public boolean wasNull()
throws SQLException
NULL.
Note that you must first call one of the getXXX methods
on a column to try to read its value and then call
the method wasNull to see if the value read was
SQL NULL.true if the last column value read was SQL
NULL and false otherwiseSQLException - if a database access error occurspublic String getString(int columnIndex) throws SQLException
ResultSet object as
a String in the Java programming language.columnIndex - the first column is 1, the second is 2, ...NULL, the
value returned is nullSQLException - if a database access error occurs
public boolean getBoolean(int columnIndex)
throws SQLException
ResultSet object as
a boolean in the Java programming language.columnIndex - the first column is 1, the second is 2, ...NULL, the
value returned is falseSQLException - if a database access error occurs
public byte getByte(int columnIndex)
throws SQLException
ResultSet object as
a byte in the Java programming language.columnIndex - the first column is 1, the second is 2, ...NULL, the
value returned is 0SQLException - if a database access error occurs
public short getShort(int columnIndex)
throws SQLException
ResultSet object as
a short in the Java programming language.columnIndex - the first column is 1, the second is 2, ...NULL, the
value returned is 0SQLException - if a database access error occurs
public int getInt(int columnIndex)
throws SQLException
ResultSet object as
an int in the Java programming language.columnIndex - the first column is 1, the second is 2, ...NULL, the
value returned is 0SQLException - if a database access error occurs
public long getLong(int columnIndex)
throws SQLException
ResultSet object as
a long in the Java programming language.columnIndex - the first column is 1, the second is 2, ...NULL, the
value returned is 0SQLException - if a database access error occurs
public float getFloat(int columnIndex)
throws SQLException
ResultSet object as
a float in the Java programming language.columnIndex - the first column is 1, the second is 2, ...NULL, the
value returned is 0SQLException - if a database access error occurs
public double getDouble(int columnIndex)
throws SQLException
ResultSet object as
a double in the Java programming language.columnIndex - the first column is 1, the second is 2, ...NULL, the
value returned is 0SQLException - if a database access error occurspublic BigDecimal getBigDecimal(int columnIndex, int scale) throws SQLException
ResultSet object as
a java.sql.BigDecimal in the Java programming language.columnIndex - the first column is 1, the second is 2, ...scale - the number of digits to the right of the decimal pointNULL, the
value returned is nullSQLException - if a database access error occurs
public byte[] getBytes(int columnIndex)
throws SQLException
ResultSet object as
a byte array in the Java programming language.
The bytes represent the raw values returned by the driver.columnIndex - the first column is 1, the second is 2, ...NULL, the
value returned is nullSQLException - if a database access error occurspublic Date getDate(int columnIndex) throws SQLException
ResultSet object as
a java.sql.Date object in the Java programming language.columnIndex - the first column is 1, the second is 2, ...NULL, the
value returned is nullSQLException - if a database access error occurspublic Time getTime(int columnIndex) throws SQLException
ResultSet object as
a java.sql.Time object in the Java programming language.columnIndex - the first column is 1, the second is 2, ...NULL, the
value returned is nullSQLException - if a database access error occurspublic Timestamp getTimestamp(int columnIndex) throws SQLException
ResultSet object as
a java.sql.Timestamp object in the Java programming language.columnIndex - the first column is 1, the second is 2, ...NULL, the
value returned is nullSQLException - if a database access error occurspublic InputStream getAsciiStream(int columnIndex) throws SQLException
ResultSet object as
a stream of ASCII characters. The value can then be read in chunks from the
stream. This method is particularly
suitable for retrieving large Note: All the data in the returned stream must be
read prior to getting the value of any other column. The next
call to a getXXX method implicitly closes the stream. Also, a
stream may return 0 when the method
InputStream.available
is called whether there is data available or not.
columnIndex - the first column is 1, the second is 2, ...NULL, the
value returned is nullSQLException - if a database access error occurspublic InputStream getUnicodeStream(int columnIndex) throws SQLException
getCharacterStream in place of
getUnicodeStream
ResultSet object as
as a stream of Unicode characters.
The value can then be read in chunks from the
stream. This method is particularly
suitable for retrieving largeLONGVARCHARvalues. The JDBC driver will
do any necessary conversion from the database format into Unicode.
The byte format of the Unicode stream must be Java UTF-8,
as specified in the Java virtual machine specification.
Note: All the data in the returned stream must be
read prior to getting the value of any other column. The next
call to a getXXX method implicitly closes the stream. Also, a
stream may return 0 when the method
InputStream.available
is called whether there is data available or not.
columnIndex - the first column is 1, the second is 2, ...NULL, the value returned is nullSQLException - if a database access error occurspublic InputStream getBinaryStream(int columnIndex) throws SQLException
ResultSet object as a binary stream of
uninterpreted bytes. The value can then be read in chunks from the
stream. This method is particularly
suitable for retrieving large LONGVARBINARY values.
Note: All the data in the returned stream must be
read prior to getting the value of any other column. The next
call to a getXXX method implicitly closes the stream. Also, a
stream may return 0 when the method
InputStream.available
is called whether there is data available or not.
columnIndex - the first column is 1, the second is 2, ...NULL, the value returned is nullSQLException - if a database access error occurspublic String getString(String columnName) throws SQLException
ResultSet object as
a String in the Java programming language.columnName - the SQL name of the columnNULL, the
value returned is nullSQLException - if a database access error occurspublic boolean getBoolean(String columnName) throws SQLException
ResultSet object as
a boolean in the Java programming language.columnName - the SQL name of the columnNULL, the
value returned is falseSQLException - if a database access error occurspublic byte getByte(String columnName) throws SQLException
ResultSet object as
a byte in the Java programming language.columnName - the SQL name of the columnNULL, the
value returned is 0SQLException - if a database access error occurspublic short getShort(String columnName) throws SQLException
ResultSet object as
a short in the Java programming language.columnName - the SQL name of the columnNULL, the
value returned is 0SQLException - if a database access error occurspublic int getInt(String columnName) throws SQLException
ResultSet object as
an int in the Java programming language.columnName - the SQL name of the columnNULL, the
value returned is 0SQLException - if a database access error occurspublic long getLong(String columnName) throws SQLException
ResultSet object as
a long in the Java programming language.columnName - the SQL name of the columnNULL, the
value returned is 0SQLException - if a database access error occurspublic float getFloat(String columnName) throws SQLException
ResultSet object as
a float in the Java programming language.columnName - the SQL name of the columnNULL, the
value returned is 0SQLException - if a database access error occurspublic double getDouble(String columnName) throws SQLException
ResultSet object as
a double in the Java programming language.columnName - the SQL name of the columnNULL, the
value returned is 0SQLException - if a database access error occurspublic BigDecimal getBigDecimal(String columnName, int scale) throws SQLException
ResultSet object as
a java.math.BigDecimal in the Java programming language.columnName - the SQL name of the columnscale - the number of digits to the right of the decimal pointNULL, the
value returned is nullSQLException - if a database access error occurspublic byte[] getBytes(String columnName) throws SQLException
ResultSet object as
a byte array in the Java programming language.
The bytes represent the raw values returned by the driver.columnName - the SQL name of the columnNULL, the
value returned is nullSQLException - if a database access error occurspublic Date getDate(String columnName) throws SQLException
ResultSet object as
a java.sql.Date object in the Java programming language.columnName - the SQL name of the columnNULL, the
value returned is nullSQLException - if a database access error occurspublic Time getTime(String columnName) throws SQLException
ResultSet object as
a java.sql.Time object in the Java programming language.columnName - the SQL name of the columnNULL,
the value returned is nullSQLException - if a database access error occurspublic Timestamp getTimestamp(String columnName) throws SQLException
ResultSet object as
a java.sql.Timestamp object.columnName - the SQL name of the columnNULL, the
value returned is nullSQLException - if a database access error occurspublic InputStream getAsciiStream(String columnName) throws SQLException
ResultSet object as a stream of
ASCII characters. The value can then be read in chunks from the
stream. This method is particularly
suitable for retrieving large LONGVARCHAR values.
The JDBC driver will
do any necessary conversion from the database format into ASCII.
Note: All the data in the returned stream must be
read prior to getting the value of any other column. The next
call to a getXXX method implicitly closes the stream. Also, a
stream may return 0 when the method available
is called whether there is data available or not.
columnName - the SQL name of the columnNULL,
the value returned is null.SQLException - if a database access error occurspublic InputStream getUnicodeStream(String columnName) throws SQLException
ResultSet object as a stream of
Unicode characters. The value can then be read in chunks from the
stream. This method is particularly
suitable for retrieving large LONGVARCHAR values.
The JDBC driver will
do any necessary conversion from the database format into Unicode.
The byte format of the Unicode stream must be Java UTF-8,
as defined in the Java virtual machine specification.
Note: All the data in the returned stream must be
read prior to getting the value of any other column. The next
call to a getXXX method implicitly closes the stream. Also, a
stream may return 0 when the method available
is called whether there is data available or not.
columnName - the SQL name of the columnNULL,
the value returned is null.SQLException - if a database access error occurspublic InputStream getBinaryStream(String columnName) throws SQLException
ResultSet object as a stream of uninterpreted
bytes.
The value can then be read in chunks from the
stream. This method is particularly
suitable for retrieving large LONGVARBINARY
values.
Note: All the data in the returned stream must be
read prior to getting the value of any other column. The next
call to a getXXX method implicitly closes the stream. Also, a
stream may return 0 when the method available
is called whether there is data available or not.
columnName - the SQL name of the columnNULL, the result is nullSQLException - if a database access error occurspublic SQLWarning getWarnings() throws SQLException
ResultSet object.
Subsequent warnings on this ResultSet object
will be chained to the SQLWarning object that
this method returns.
The warning chain is automatically cleared each time a new row is read.
Note: This warning chain only covers warnings caused
by ResultSet methods. Any warning caused by
Statement methods
(such as reading OUT parameters) will be chained on the
Statement object.
SQLWarning object reported or nullSQLException - if a database access error occurs
public void clearWarnings()
throws SQLException
ResultSet object.
After this method is called, the method getWarnings
returns null until a new warning is
reported for this ResultSet object.SQLException - if a database access error occurspublic String getCursorName() throws SQLException
ResultSet
object.
In SQL, a result table is retrieved through a cursor that is
named. The current row of a result set can be updated or deleted
using a positioned update/delete statement that references the
cursor name. To insure that the cursor has the proper isolation
level to support update, the cursor's select statement should be
of the form 'select for update'. If the 'for update' clause is
omitted, the positioned updates may fail.
The JDBC API supports this SQL feature by providing the name of the
SQL cursor used by a ResultSet object.
The current row of a ResultSet object
is also the current row of this SQL cursor.
Note: If positioned update is not supported, a
SQLException is thrown.
ResultSet object's cursorSQLException - if a database access error occurspublic ResultSetMetaData getMetaData() throws SQLException
ResultSet object's columns.ResultSet object's columnsSQLException - if a database access error occurspublic Object getObject(int columnIndex) throws SQLException
Gets the value of the designated column in the current row
of this ResultSet object as
an Object in the Java programming language.
This method will return the value of the given column as a Java object. The type of the Java object will be the default Java object type corresponding to the column's SQL type, following the mapping for built-in types specified in the JDBC specification.
This method may also be used to read datatabase-specific
abstract data types.
In the JDBC 2.0 API, the behavior of method
getObject is extended to materialize
data of SQL user-defined types. When a column contains
a structured or distinct value, the behavior of this method is as
if it were a call to: getObject(columnIndex,
this.getStatement().getConnection().getTypeMap()).
columnIndex - the first column is 1, the second is 2, ...java.lang.Object holding the column valueSQLException - if a database access error occurspublic Object getObject(String columnName) throws SQLException
Gets the value of the designated column in the current row
of this ResultSet object as
an Object in the Java programming language.
This method will return the value of the given column as a Java object. The type of the Java object will be the default Java object type corresponding to the column's SQL type, following the mapping for built-in types specified in the JDBC specification.
This method may also be used to read datatabase-specific
abstract data types.
In the JDBC 2.0 API, the behavior of the method
getObject is extended to materialize
data of SQL user-defined types. When a column contains
a structured or distinct value, the behavior of this method is as
if it were a call to: getObject(columnIndex,
this.getStatement().getConnection().getTypeMap()).
columnName - the SQL name of the columnjava.lang.Object holding the column valueSQLException - if a database access error occurspublic int findColumn(String columnName) throws SQLException
ResultSet column name to its
ResultSet column index.columnName - the name of the columnSQLException - if a database access error occurspublic Reader getCharacterStream(int columnIndex) throws SQLException
ResultSet object as a
java.io.Reader object.columnIndex - the first column is 1, the second is 2, ...java.io.Reader object that contains the column
value; if the value is SQL NULL, the value returned is
null in the Java programming language.public Reader getCharacterStream(String columnName) throws SQLException
ResultSet object as a
java.io.Reader object.columnName - the name of the columnjava.io.Reader object that contains the column
value; if the value is SQL NULL, the value returned is
null in the Java programming language.public BigDecimal getBigDecimal(int columnIndex) throws SQLException
ResultSet object as a
java.math.BigDecimal with full precision.columnIndex - the first column is 1, the second is 2, ...NULL, the value returned is
null in the Java programming language.SQLException - if a database access error occurspublic BigDecimal getBigDecimal(String columnName) throws SQLException
ResultSet object as a
java.math.BigDecimal with full precision.columnName - the column nameNULL, the value returned is
null in the Java programming language.SQLException - if a database access error occurs
public boolean isBeforeFirst()
throws SQLException
ResultSet object.true if the cursor is before the first row;
false if the cursor is at any other position or the
result set contains no rowsSQLException - if a database access error occursp