- All Implemented Interfaces:
AutoCloseable
,ResultSet
,Wrapper
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, you can
iterate through it only once and only from the first row to the
last row. It is 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 updatableThe
ResultSet
interface provides
getter methods (getBoolean
, getLong
, and so on)
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 getter methods, a JDBC driver attempts
to convert the underlying data to the Java type specified in the
getter method and returns a suitable Java value. The JDBC specification
has a table showing the allowable mappings from SQL types to Java types
that can be used by the ResultSet
getter methods.
Column names used as input to getter methods are case insensitive. When a getter 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. (JDBC4 clarification:) If column names are used, the programmer should take care to guarantee that they uniquely refer to the intended columns, which can be assured with the SQL AS clause.
A set of updater methods were added to this interface in the JDBC 2.0 API (Java™ 2 SDK, Standard Edition, version 1.2). The comments regarding parameters to the getter methods also apply to parameters to the updater methods.
The updater methods may be used in two ways:
- to update a column value in the current row. In a scrollable
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 theNAME
column in the fifth row of theResultSet
objectrs
and then uses the methodupdateRow
to update the data source table from whichrs
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 beAINSWORTH
rs.updateRow(); // updates the row in the data source - to insert column values into the insert row. An updatable
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 intors
and into the data source table using the methodinsertRow
.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 be35
rs.updateBoolean(3, true); // updates the third column totrue
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 ResultSetMetaData
object returned by the ResultSet.getMetaData
method.
HSQLDB-Specific Information:
A ResultSet
object generated by HSQLDB is by default of
ResultSet.TYPE_FORWARD_ONLY
(as is standard JDBC behavior)
and does not allow the use of absolute and relative positioning
methods. If a statement is created with:
Statement stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);then the
ResultSet
objects it produces support
using all of the absolute and relative positioning methods of JDBC2
to set the position of the current row, for example:
rs.absolute(5); String fifthRowValue = rs.getString(1); rs.relative(4); String ninthRowValue = rs.getString(1);Note: An HSQLDB
ResultSet
object stays open if it is not
explicitly closed, even after its
connection is closed. This is regardless of the operational mode of
the Database
from which it came. That is, they
persist whether originating from a Server
,
WebServer
or in-process mode Database
. A connection
opened with the property setting close_result=true
closes
any remaining open results when the connection is closed.
From HSQLDB 2.0, there is full support for updatable result sets.
Supported methods
include all updateXXX methods for the supported types, as well as the
insertRow()
,
updateRow()
, deleteRow()
, moveToInsertRow()
methods.
The Statement must be created with ResultSet.CONCUR_UPDATABLE instead of CONCUR_READ_ONLY.
Updatability of a result set follows the SQL standards. Some or all columns
of an updatable result set can be updated. The current row in such result sets
can be deleted using the deleteRow()
method. Some updatable result set
can also be inserted into and support moveToInsertRow()
.
A result set is updatable if the SELECT statement is updatable. This includes SELECT from TABLE and updatable VIEW objects. An updatable SELECT statement has a single underlying table or view. HSQLDB supports both scrollable and forward-only result sets for updatability.
-- In the SELECT below, columns A and B are updatable, any row can be -- deleted, but it is not insertable-into as column C is not directly from -- the table. SELECT A, B, A + B AS C FROM T WHERE ... -- The SELECT below can be insertable-into so long as other columns of the -- table that do not appear in the SELECT list have a default value. SELECT A, B FROM T WHERE ...(fredt@users)
(campbell-burnet@users)
- Since:
- 1.9.0
- Author:
- Campbell Burnet (campbell-burnet@users dot sourceforge.net), Fred Toussi (fredt@users dot sourceforge.net)
- See Also:
-
Field Summary
FieldsFields inherited from interface java.sql.ResultSet
CLOSE_CURSORS_AT_COMMIT, CONCUR_READ_ONLY, CONCUR_UPDATABLE, FETCH_FORWARD, FETCH_REVERSE, FETCH_UNKNOWN, HOLD_CURSORS_OVER_COMMIT, TYPE_FORWARD_ONLY, TYPE_SCROLL_INSENSITIVE, TYPE_SCROLL_SENSITIVE
-
Constructor Summary
ConstructorsConstructorDescriptionJDBCResultSet
(JDBCConnection conn, org.hsqldb.jdbc.JDBCStatementBase s, org.hsqldb.result.Result r, org.hsqldb.result.ResultMetaData metaData) Constructs a newJDBCResultSet
object using the specified navigator andorg.hsqldb.result.ResultMetaData
.JDBCResultSet
(JDBCConnection conn, org.hsqldb.result.Result r, org.hsqldb.result.ResultMetaData metaData) -
Method Summary
Modifier and TypeMethodDescriptionboolean
absolute
(int row) Moves the cursor to the given row number in thisResultSet
object.void
Moves the cursor to the end of thisResultSet
object, just after the last row.void
Moves the cursor to the front of thisResultSet
object, just before the first row.void
Cancels the updates made to the current row in thisResultSet
object.void
Clears all warnings reported on thisResultSet
object.void
close()
Releases thisResultSet
object's database and JDBC resources immediately instead of waiting for this to happen when it is automatically closed.void
Deletes the current row from thisResultSet
object and from the underlying database.int
findColumn
(String columnLabel) Maps the givenResultSet
column label to itsResultSet
column index.boolean
first()
Moves the cursor to the first row in thisResultSet
object.getArray
(int columnIndex) Retrieves the value of the designated column in the current row of thisResultSet
object as anArray
object in the Java programming language.Retrieves the value of the designated column in the current row of thisResultSet
object as anArray
object in the Java programming language.getAsciiStream
(int columnIndex) Retrieves the value of the designated column in the current row of thisResultSet
object as a stream of ASCII characters.getAsciiStream
(String columnLabel) Retrieves the value of the designated column in the current row of thisResultSet
object as a stream of ASCII characters.getBigDecimal
(int columnIndex) Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.math.BigDecimal
with full precision.getBigDecimal
(int columnIndex, int scale) Deprecated.by java.sun.com as of JDK 1.2getBigDecimal
(String columnLabel) Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.math.BigDecimal
with full precision.getBigDecimal
(String columnLabel, int scale) Deprecated.by java.sun.com as of JDK 1.2getBinaryStream
(int columnIndex) Retrieves the value of the designated column in the current row of thisResultSet
object as a stream of uninterpreted bytes.getBinaryStream
(String columnLabel) Retrieves the value of the designated column in the current row of thisResultSet
object as a stream of uninterpretedbyte
s.getBlob
(int columnIndex) Retrieves the value of the designated column in the current row of thisResultSet
object as aBlob
object in the Java programming language.Retrieves the value of the designated column in the current row of thisResultSet
object as aBlob
object in the Java programming language.boolean
getBoolean
(int columnIndex) Retrieves the value of the designated column in the current row of thisResultSet
object as aboolean
in the Java programming language.boolean
getBoolean
(String columnLabel) Retrieves the value of the designated column in the current row of thisResultSet
object as aboolean
in the Java programming language.byte
getByte
(int columnIndex) Retrieves the value of the designated column in the current row of thisResultSet
object as abyte
in the Java programming language.byte
Retrieves the value of the designated column in the current row of thisResultSet
object as abyte
in the Java programming language.byte[]
getBytes
(int columnIndex) Retrieves the value of the designated column in the current row of thisResultSet
object as abyte
array in the Java programming language.byte[]
Retrieves the value of the designated column in the current row of thisResultSet
object as abyte
array in the Java programming language.getCharacterStream
(int columnIndex) Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.io.Reader
object.getCharacterStream
(String columnLabel) Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.io.Reader
object.getClob
(int columnIndex) Retrieves the value of the designated column in the current row of thisResultSet
object as aClob
object in the Java programming language.Retrieves the value of the designated column in the current row of thisResultSet
object as aClob
object in the Java programming language.int
Retrieves the concurrency mode of thisResultSet
object.Retrieves the name of the SQL cursor used by thisResultSet
object.getDate
(int columnIndex) Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.sql.Date
object in the Java programming language.Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.sql.Date
object in the Java programming language.Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.sql.Date
object in the Java programming language.Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.sql.Date
object in the Java programming language.double
getDouble
(int columnIndex) Retrieves the value of the designated column in the current row of thisResultSet
object as adouble
in the Java programming language.double
Retrieves the value of the designated column in the current row of thisResultSet
object as adouble
in the Java programming language.int
Retrieves the fetch direction for thisResultSet
object.int
Retrieves the fetch size for thisResultSet
object.float
getFloat
(int columnIndex) Retrieves the value of the designated column in the current row of thisResultSet
object as afloat
in the Java programming language.float
Retrieves the value of the designated column in the current row of thisResultSet
object as afloat
in the Java programming language.int
Retrieves the holdability of thisResultSet
objectint
getInt
(int columnIndex) Retrieves the value of the designated column in the current row of thisResultSet
object as anint
in the Java programming language.int
Retrieves the value of the designated column in the current row of thisResultSet
object as anint
in the Java programming language.long
getLong
(int columnIndex) Retrieves the value of the designated column in the current row of thisResultSet
object as along
in the Java programming language.long
Retrieves the value of the designated column in the current row of thisResultSet
object as along
in the Java programming language.Retrieves the number, types and properties of thisResultSet
object's columns.getNCharacterStream
(int columnIndex) Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.io.Reader
object.getNCharacterStream
(String columnLabel) Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.io.Reader
object.getNClob
(int columnIndex) Retrieves the value of the designated column in the current row of thisResultSet
object as aNClob
object in the Java programming language.Retrieves the value of the designated column in the current row of thisResultSet
object as aNClob
object in the Java programming language.getNString
(int columnIndex) Retrieves the value of the designated column in the current row of thisResultSet
object as aString
in the Java programming language.getNString
(String columnLabel) Retrieves the value of the designated column in the current row of thisResultSet
object as aString
in the Java programming language.getObject
(int columnIndex) <T> T
Retrieves the value of the designated column in the current row of thisResultSet
object and will convert from the SQL type of the column to the requested Java data type, if the conversion is supported.Retrieves the value of the designated column in the current row of thisResultSet
object as anObject
in the Java programming language.<T> T
Retrieves the value of the designated column in the current row of thisResultSet
object and will convert from the SQL type of the column to the requested Java data type, if the conversion is supported.Retrieves the value of the designated column in the current row of thisResultSet
object as anObject
in the Java programming language.getRef
(int columnIndex) Retrieves the value of the designated column in the current row of thisResultSet
object as aRef
object in the Java programming language.Retrieves the value of the designated column in the current row of thisResultSet
object as aRef
object in the Java programming language.int
getRow()
Retrieves the current row number.getRowId
(int columnIndex) Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.sql.RowId
object in the Java programming language.Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.sql.RowId
object in the Java programming language.short
getShort
(int columnIndex) Retrieves the value of the designated column in the current row of thisResultSet
object as ashort
in the Java programming language.short
Retrieves the value of the designated column in the current row of thisResultSet
object as ashort
in the Java programming language.getSQLXML
(int columnIndex) Retrieves the value of the designated column in the current row of thisResultSet
as ajava.sql.SQLXML
object in the Java programming language.Retrieves the value of the designated column in the current row of thisResultSet
as ajava.sql.SQLXML
object in the Java programming language.Retrieves theStatement
object that produced thisResultSet
object.getString
(int columnIndex) Retrieves the value of the designated column in the current row of thisResultSet
object as aString
in the Java programming language.Retrieves the value of the designated column in the current row of thisResultSet
object as aString
in the Java programming language.getTime
(int columnIndex) Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.sql.Time
object in the Java programming language.Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.sql.Time
object in the Java programming language.Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.sql.Time
object in the Java programming language.Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.sql.Time
object in the Java programming language.getTimestamp
(int columnIndex) Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.sql.Timestamp
object in the Java programming language.getTimestamp
(int columnIndex, Calendar cal) Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.sql.Timestamp
object in the Java programming language.getTimestamp
(String columnLabel) Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.sql.Timestamp
object in the Java programming language.getTimestamp
(String columnLabel, Calendar cal) Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.sql.Timestamp
object in the Java programming language.int
getType()
Retrieves the type of thisResultSet
object.getUnicodeStream
(int columnIndex) Deprecated.usegetCharacterStream
in place ofgetUnicodeStream
getUnicodeStream
(String columnLabel) Deprecated.usegetCharacterStream
insteadgetURL
(int columnIndex) Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.net.URL
object in the Java programming language.Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.net.URL
object in the Java programming language.Retrieves the first warning reported by calls on thisResultSet
object.void
Inserts the contents of the insert row into thisResultSet
object and into the database.boolean
Retrieves whether the cursor is after the last row in thisResultSet
object.boolean
Retrieves whether the cursor is before the first row in thisResultSet
object.boolean
isClosed()
Retrieves whether thisResultSet
object has been closed.boolean
isFirst()
Retrieves whether the cursor is on the first row of thisResultSet
object.boolean
isLast()
Retrieves whether the cursor is on the last row of thisResultSet
object.boolean
isWrapperFor
(Class<?> iface) Returns true if this either implements the interface argument or is directly or indirectly a wrapper for an object that does.boolean
last()
Moves the cursor to the last row in thisResultSet
object.void
Moves the cursor to the remembered cursor position, usually the current row.void
Moves the cursor to the insert row.static JDBCResultSet
static JDBCResultSet
newJDBCResultSet
(org.hsqldb.result.Result r, org.hsqldb.result.ResultMetaData metaData) Factory method returns a newJDBCResultSet
object for use with user defined functions that return a ResultSet object.boolean
next()
Moves the cursor froward one row from its current position.boolean
previous()
Moves the cursor to the previous row in thisResultSet
object.void
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
Retrieves whether a row has been deleted.boolean
Retrieves whether the current row has had an insertion.boolean
Retrieves whether the current row has been updated.void
setFetchDirection
(int direction) Gives a hint as to the direction in which the rows in thisResultSet
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 thisResultSet
object.<T> T
Returns an object that implements the given interface to allow access to non-standard methods, or standard methods not exposed by the proxy.void
updateArray
(int columnIndex, Array x) Updates the designated column with ajava.sql.Array
value.void
updateArray
(String columnLabel, Array x) Updates the designated column with ajava.sql.Array
value.void
updateAsciiStream
(int columnIndex, InputStream x) Updates the designated column with an ascii stream value.void
updateAsciiStream
(int columnIndex, InputStream x, int length) (JDBC4 clarification:) Updates the designated column with an ascii stream value, which will have the specified number of bytes.void
updateAsciiStream
(int columnIndex, InputStream x, long length) Updates the designated column with an ascii stream value, which will have the specified number of bytes.void
updateAsciiStream
(String columnLabel, InputStream x) Updates the designated column with an ascii stream value.void
updateAsciiStream
(String columnLabel, InputStream x, int length) (JDBC4 clarification:) Updates the designated column with an ascii stream value, which will have the specified number of bytes.void
updateAsciiStream
(String columnLabel, InputStream x, long length) Updates the designated column with an ascii stream value, which will have the specified number of bytes.void
updateBigDecimal
(int columnIndex, BigDecimal x) Updates the designated column with ajava.math.BigDecimal
value.void
updateBigDecimal
(String columnLabel, BigDecimal x) Updates the designated column with ajava.sql.BigDecimal
value.void
updateBinaryStream
(int columnIndex, InputStream x) Updates the designated column with a binary stream value.void
updateBinaryStream
(int columnIndex, InputStream x, int length) (JDBC4 clarification:) Updates the designated column with a binary stream value, which will have the specified number of bytes.void
updateBinaryStream
(int columnIndex, InputStream x, long length) Updates the designated column with a binary stream value, which will have the specified number of bytes.void
updateBinaryStream
(String columnLabel, InputStream x) Updates the designated column with a binary stream value.void
updateBinaryStream
(String columnLabel, InputStream x, int length) (JDBC4 clarification:) Updates the designated column with a binary stream value, which will have the specified number of bytes.void
updateBinaryStream
(String columnLabel, InputStream x, long length) Updates the designated column with a binary stream value, which will have the specified number of bytes.void
updateBlob
(int columnIndex, InputStream inputStream) Updates the designated column using the given input stream.void
updateBlob
(int columnIndex, InputStream inputStream, long length) Updates the designated column using the given input stream, which will have the specified number of bytes.void
updateBlob
(int columnIndex, Blob x) Updates the designated column with ajava.sql.Blob
value.void
updateBlob
(String columnLabel, InputStream inputStream) Updates the designated column using the given input stream.void
updateBlob
(String columnLabel, InputStream inputStream, long length) Updates the designated column using the given input stream, which will have the specified number of bytes.void
updateBlob
(String columnLabel, Blob x) Updates the designated column with ajava.sql.Blob
value.void
updateBoolean
(int columnIndex, boolean x) Updates the designated column with aboolean
value.void
updateBoolean
(String columnLabel, boolean x) Updates the designated column with aboolean
value.void
updateByte
(int columnIndex, byte x) Updates the designated column with abyte
value.void
updateByte
(String columnLabel, byte x) Updates the designated column with abyte
value.void
updateBytes
(int columnIndex, byte[] x) Updates the designated column with abyte
array value.void
updateBytes
(String columnLabel, byte[] x) Updates the designated column with a byte array value.void
updateCharacterStream
(int columnIndex, Reader x) Updates the designated column with a character stream value.void
updateCharacterStream
(int columnIndex, Reader x, int length) (JDBC4 clarification:) Updates the designated column with a character stream value, which will have the specified number of (CHECKME: characters?) bytes.void
updateCharacterStream
(int columnIndex, Reader x, long length) Updates the designated column with a character stream value, which will have the specified number of bytes.void
updateCharacterStream
(String columnLabel, Reader reader) Updates the designated column with a character stream value.void
updateCharacterStream
(String columnLabel, Reader reader, int length) (JDBC4 clarification) Updates the designated column with a character stream value, which will have the specified number of (CHECKME: characters?) bytes.void
updateCharacterStream
(String columnLabel, Reader reader, long length) Updates the designated column with a character stream value, which will have the specified number of bytes.void
updateClob
(int columnIndex, Reader reader) Updates the designated column using the givenReader
object.void
updateClob
(int columnIndex, Reader reader, long length) Updates the designated column using the givenReader
object, which is the given number of characters long.void
updateClob
(int columnIndex, Clob x) Updates the designated column with ajava.sql.Clob
value.void
updateClob
(String columnLabel, Reader reader) Updates the designated column using the givenReader
object.void
updateClob
(String columnLabel, Reader reader, long length) Updates the designated column using the givenReader
object, which is the given number of characters long.void
updateClob
(String columnLabel, Clob x) Updates the designated column with ajava.sql.Clob
value.void
updateDate
(int columnIndex, Date x) Updates the designated column with ajava.sql.Date
value.void
updateDate
(String columnLabel, Date x) Updates the designated column with ajava.sql.Date
value.void
updateDouble
(int columnIndex, double x) Updates the designated column with adouble
value.void
updateDouble
(String columnLabel, double x) Updates the designated column with adouble
value.void
updateFloat
(int columnIndex, float x) Updates the designated column with afloat
value.void
updateFloat
(String columnLabel, float x) Updates the designated column with afloat
value.void
updateInt
(int columnIndex, int x) Updates the designated column with anint
value.void
Updates the designated column with anint
value.void
updateLong
(int columnIndex, long x) Updates the designated column with along
value.void
updateLong
(String columnLabel, long x) Updates the designated column with along
value.void
updateNCharacterStream
(int columnIndex, Reader reader) Updates the designated column with a character stream value.void
updateNCharacterStream
(int columnIndex, Reader x, long length) Updates the designated column with a character stream value, which will have the specified number of bytes.void
updateNCharacterStream
(String columnLabel, Reader reader) Updates the designated column with a character stream value.void
updateNCharacterStream
(String columnLabel, Reader reader, long length) Updates the designated column with a character stream value, which will have the specified number of bytes.void
updateNClob
(int columnIndex, Reader reader) Updates the designated column using the givenReader
The data will be read from the stream as needed until end-of-stream is reached.void
updateNClob
(int columnIndex, Reader reader, long length) Updates the designated column using the givenReader
object, which is the given number of characters long.void
updateNClob
(int columnIndex, NClob nClob) Updates the designated column with ajava.sql.NClob
value.void
updateNClob
(String columnLabel, Reader reader) Updates the designated column using the givenReader
object.void
updateNClob
(String columnLabel, Reader reader, long length) Updates the designated column using the givenReader
object, which is the given number of characters long.void
updateNClob
(String columnLabel, NClob nClob) Updates the designated column with ajava.sql.NClob
value.void
updateNString
(int columnIndex, String nString) Updates the designated column with aString
value.void
updateNString
(String columnLabel, String nString) Updates the designated column with aString
value.void
updateNull
(int columnIndex) (JDBC4 clarification:) Updates the designated column with anull
value.void
updateNull
(String columnLabel) Updates the designated column with anull
value.void
updateObject
(int columnIndex, Object x) Updates the designated column with anObject
value.void
updateObject
(int columnIndex, Object x, int scaleOrLength) Updates the designated column with anObject
value.void
updateObject
(int columnIndex, Object x, SQLType targetSqlType) Updates the designated column with anObject
value.void
updateObject
(int columnIndex, Object x, SQLType targetSqlType, int scaleOrLength) Updates the designated column with anObject
value.void
updateObject
(String columnLabel, Object x) Updates the designated column with anObject
value.void
updateObject
(String columnLabel, Object x, int scaleOrLength) Updates the designated column with anObject
value.void
updateObject
(String columnLabel, Object x, SQLType targetSqlType) Updates the designated column with anObject
value.void
updateObject
(String columnLabel, Object x, SQLType targetSqlType, int scaleOrLength) Updates the designated column with anObject
value.void
Updates the designated column with ajava.sql.Ref
value.void
Updates the designated column with ajava.sql.Ref
value.void
Updates the underlying database with the new contents of the current row of thisResultSet
object.void
updateRowId
(int columnIndex, RowId x) Updates the designated column with aRowId
value.void
updateRowId
(String columnLabel, RowId x) Updates the designated column with aRowId
value.void
updateShort
(int columnIndex, short x) Updates the designated column with ashort
value.void
updateShort
(String columnLabel, short x) Updates the designated column with ashort
value.void
updateSQLXML
(int columnIndex, SQLXML xmlObject) Updates the designated column with ajava.sql.SQLXML
value.void
updateSQLXML
(String columnLabel, SQLXML xmlObject) Updates the designated column with ajava.sql.SQLXML
value.void
updateString
(int columnIndex, String x) Updates the designated column with aString
value.void
updateString
(String columnLabel, String x) Updates the designated column with aString
value.void
updateTime
(int columnIndex, Time x) Updates the designated column with ajava.sql.Time
value.void
updateTime
(String columnLabel, Time x) Updates the designated column with ajava.sql.Time
value.void
updateTimestamp
(int columnIndex, Timestamp x) Updates the designated column with ajava.sql.Timestamp
value.void
updateTimestamp
(String columnLabel, Timestamp x) Updates the designated column with ajava.sql.Timestamp
value.boolean
wasNull()
Reports whether the last column read had a value of SQLNULL
.
-
Field Details
-
result
public org.hsqldb.result.Result resultThe underlying result.
-
-
Constructor Details
-
JDBCResultSet
public JDBCResultSet(JDBCConnection conn, org.hsqldb.jdbc.JDBCStatementBase s, org.hsqldb.result.Result r, org.hsqldb.result.ResultMetaData metaData) Constructs a newJDBCResultSet
object using the specified navigator andorg.hsqldb.result.ResultMetaData
.- Parameters:
conn
- JDBCConnections
- the statementr
- the internal result form that the newJDBCResultSet
representsmetaData
- the connection properties
-
JDBCResultSet
public JDBCResultSet(JDBCConnection conn, org.hsqldb.result.Result r, org.hsqldb.result.ResultMetaData metaData)
-
-
Method Details
-
next
Moves the cursor froward one row from its current position. AResultSet
cursor is initially positioned before the first row; the first call to the methodnext
makes the first row the current row; the second call makes the second row the current row, and so on.(JDBC4 clarification:) When a call to the
next
method returnsfalse
, the cursor is positioned after the last row. Any invocation of aResultSet
method which requires a current row will result in aSQLException
being thrown. If the result set type isTYPE_FORWARD_ONLY
, it is vendor specified whether their JDBC driver implementation will returnfalse
or throw anSQLException
on a subsequent call tonext
.If an input stream is open for the current row, a call to the method
next
will implicitly close it. AResultSet
object's warning chain is cleared when a new row is read.- Specified by:
next
in interfaceResultSet
- Returns:
true
if the new current row is valid;false
if there are no more rows- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set
-
close
Releases thisResultSet
object's database and JDBC resources immediately instead of waiting for this to happen when it is automatically closed.(JDBC4 clarification:) The closing of a
ResultSet
object does not close theBlob
,Clob
orNClob
objects created by theResultSet
.Blob
,Clob
orNClob
objects remain valid for at least the duration of the transaction in which they are created, unless theirfree
method is invoked.(JDBC4 clarification:) When a
ResultSet
is closed, anyResultSetMetaData
instances that were created by calling thegetMetaData
method remain accessible.Note: A
ResultSet
object is automatically closed by theStatement
object that generated it when thatStatement
object is closed, re-executed, or is used to retrieve the next result from a sequence of multiple results. (JDBC4 deleted:) [AResultSet
object is also automatically closed when it is garbage collected.]Calling the method
close
on aResultSet
object that is already closed is a no-op.- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceResultSet
- Throws:
SQLException
- if a database access error occurs
-
wasNull
Reports whether the last column read had a value of SQLNULL
. Note that you must first call one of the getter methods on a column to try to read its value and then call the methodwasNull
to see if the value read was SQLNULL
.- Specified by:
wasNull
in interfaceResultSet
- Returns:
true
if the last column value read was SQLNULL
andfalse
otherwise- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set
-
getString
Retrieves the value of the designated column in the current row of thisResultSet
object as aString
in the Java programming language.- Specified by:
getString
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...- Returns:
- the column value; if the value is SQL
NULL
, the value returned isnull
- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set
-
getBoolean
Retrieves the value of the designated column in the current row of thisResultSet
object as aboolean
in the Java programming language.(JDBC4 clarification:)
If the designated column has a datatype of CHAR or VARCHAR and contains a "0" or has a datatype of BIT, TINYINT, SMALLINT, INTEGER or BIGINT and contains a 0, a value of
false
is returned. If the designated column has a datatype of CHAR or VARCHAR and contains a "1" or has a datatype of BIT, TINYINT, SMALLINT, INTEGER or BIGINT and contains a 1, a value oftrue
is returned.- Specified by:
getBoolean
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...- Returns:
- the column value; if the value is SQL
NULL
, the value returned isfalse
- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set
-
getByte
Retrieves the value of the designated column in the current row of thisResultSet
object as abyte
in the Java programming language.HSQLDB-Specific Information:
HSQLDB converts the numeric value to the return type. If the value is out of the range for the return type, an error is returned. For example, this can happen if getByte() or getShort() is used to retrieve a value of type INTEGER or BIGINT and the value is beyond the range covered by the return type.
- Specified by:
getByte
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...- Returns:
- the column value; if the value is SQL
NULL
, the value returned is0
- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set
-
getShort
Retrieves the value of the designated column in the current row of thisResultSet
object as ashort
in the Java programming language.HSQLDB-Specific Information:
HSQLDB converts the numeric value to the return type. If the value is out of the range for the return type, an error is returned. For example, this can happen if getByte() or getShort() is used to retrieve a value of type INTEGER or BIGINT and the value is beyond the range covered by the return type.
- Specified by:
getShort
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...- Returns:
- the column value; if the value is SQL
NULL
, the value returned is0
- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set
-
getInt
Retrieves the value of the designated column in the current row of thisResultSet
object as anint
in the Java programming language.HSQLDB-Specific Information:
HSQLDB converts the numeric value to the return type. If the value is out of the range for the return type, an error is returned. For example, this can happen if getInt() or getLong() is used to retrieve a value of type DECIMAL or NUMERIC with a large precision and the value is beyond the range covered by the return type.
- Specified by:
getInt
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...- Returns:
- the column value; if the value is SQL
NULL
, the value returned is0
- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set
-
getLong
Retrieves the value of the designated column in the current row of thisResultSet
object as along
in the Java programming language.HSQLDB-Specific Information:
HSQLDB converts the numeric value to the return type. If the value is out of the range for the return type, an error is returned. For example, this can happen if getInt() or getLong() is used to retrieve a value of type DECIMAL or NUMERIC with a large precision and the value is beyond the range covered by the return type.
- Specified by:
getLong
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...- Returns:
- the column value; if the value is SQL
NULL
, the value returned is0
- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set
-
getFloat
Retrieves the value of the designated column in the current row of thisResultSet
object as afloat
in the Java programming language.HSQLDB-Specific Information:
HSQLDB converts the numeric value to the return type. If the value is out of the range for the return type, an error is returned. For example, this can happen if getFloat() or getDouble() is used to retrieve a value of type DECIMAL or NUMERIC with a large precision and the value is beyond the range covered by the return type.
- Specified by:
getFloat
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...- Returns:
- the column value; if the value is SQL
NULL
, the value returned is0
- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set
-
getDouble
Retrieves the value of the designated column in the current row of thisResultSet
object as adouble
in the Java programming language.HSQLDB-Specific Information:
HSQLDB converts the numeric value to the return type. If the value is out of the range for the return type, an error is returned. For example, this can happen if getFloat() or getDouble() is used to retrieve a value of type DECIMAL or NUMERIC with a large precision and the value is beyond the range covered by the return type.
- Specified by:
getDouble
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...- Returns:
- the column value; if the value is SQL
NULL
, the value returned is0
- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set
-
getBigDecimal
Deprecated.by java.sun.com as of JDK 1.2Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.sql.BigDecimal
in the Java programming language.HSQLDB-Specific Information:
HSQLDB converts the result and sets the scale with BigDecimal.ROUND_HALF_DOWN.
- Specified by:
getBigDecimal
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...scale
- the number of digits to the right of the decimal point- Returns:
- the column value; if the value is SQL
NULL
, the value returned isnull
- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method
-
getBytes
Retrieves the value of the designated column in the current row of thisResultSet
object as abyte
array in the Java programming language. The bytes represent the raw values returned by the driver.HSQLDB-Specific Information:
HSQLDB returns correct values for columns of binary types
BINARY
,BIT
,BLOB
- Specified by:
getBytes
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...- Returns:
- the column value; if the value is SQL
NULL
, the value returned isnull
- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set
-
getDate
Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.sql.Date
object in the Java programming language.- Specified by:
getDate
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...- Returns:
- the column value; if the value is SQL
NULL
, the value returned isnull
- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set
-
getTime
Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.sql.Time
object in the Java programming language.- Specified by:
getTime
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...- Returns:
- the column value; if the value is SQL
NULL
, the value returned isnull
- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set
-
getTimestamp
Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.sql.Timestamp
object in the Java programming language.- Specified by:
getTimestamp
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...- Returns:
- the column value; if the value is SQL
NULL
, the value returned isnull
- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set
-
getAsciiStream
Retrieves the value of the designated column in the current row of thisResultSet
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 getter method implicitly closes the stream. Also, a stream may return
0
when the methodInputStream.available
is called whether there is data available or not.HSQLDB-Specific Information:
The limitation noted above does not apply to HSQLDB.
When the column is of type CHAR and its variations, it requires no conversion since it is represented internally already as a Java String object. When the column is not of type CHAR and its variations, the returned stream is based on a conversion to the Java
String
representation of the value. In either case, the obtained stream is always equivalent to a stream of the low order bytes from the value's String representation.HSQLDB SQL
CHAR
and its variations are all Unicode strings internally, so the recommended alternatives to this method aregetString
,getUnicodeStream
(deprecated) and new to 1.7.0:getCharacterStream
(now preferred over the deprecated getUnicodeStream alternative).- Specified by:
getAsciiStream
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...- Returns:
- a Java input stream that delivers the database column value
as a stream of one-byte ASCII characters;
if the value is SQL
NULL
, the value returned isnull
- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set
-
getUnicodeStream
Deprecated.usegetCharacterStream
in place ofgetUnicodeStream
Retrieves the value of the designated column in the current row of thisResultSet
object as a stream of two-byte Unicode characters. The first byte is the high byte; the second byte is the low byte. The value can then be read in chunks from the stream. This method is particularly suitable for retrieving largeLONGVARCHAR
values. The JDBC driver will do any necessary conversion from the database format into Unicode.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 getter method implicitly closes the stream. Also, a stream may return
0
when the methodInputStream.available
is called, whether there is data available or not.HSQLDB-Specific Information:
The limitation noted above does not apply to HSQLDB.
When the column is of type CHAR and its variations, it requires no conversion since it is represented internally already as Java Strings. When the column is not of type CHAR and its variations, the returned stream is based on a conversion to the Java
String
representation of the value. In either case, the obtained stream is always equivalent to a stream of bytes from the value's String representation, with high-byte first.- Specified by:
getUnicodeStream
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...- Returns:
- a Java input stream that delivers the database column value
as a stream of two-byte Unicode characters;
if the value is SQL
NULL
, the value returned isnull
- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method
-
getBinaryStream
Retrieves the value of the designated column in the current row of thisResultSet
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 largeLONGVARBINARY
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 getter method implicitly closes the stream. Also, a stream may return
0
when the methodInputStream.available
is called whether there is data available or not.- Specified by:
getBinaryStream
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...- Returns:
- a Java input stream that delivers the database column value
as a stream of uninterpreted bytes;
if the value is SQL
NULL
, the value returned isnull
- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set
-
getString
Retrieves the value of the designated column in the current row of thisResultSet
object as aString
in the Java programming language.- Specified by:
getString
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column- Returns:
- the column value; if the value is SQL
NULL
, the value returned isnull
- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set
-
getBoolean
Retrieves the value of the designated column in the current row of thisResultSet
object as aboolean
in the Java programming language.(JDBC4 clarification:) If the designated column has a datatype of CHAR or VARCHAR and contains a "0" or has a datatype of BIT, TINYINT, SMALLINT, INTEGER or BIGINT and contains a 0, a value of
false
is returned. If the designated column has a datatype of CHAR or VARCHAR and contains a "1" or has a datatype of BIT, TINYINT, SMALLINT, INTEGER or BIGINT and contains a 1, a value oftrue
is returned.- Specified by:
getBoolean
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column- Returns:
- the column value; if the value is SQL
NULL
, the value returned isfalse
- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set
-
getByte
Retrieves the value of the designated column in the current row of thisResultSet
object as abyte
in the Java programming language.- Specified by:
getByte
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column- Returns:
- the column value; if the value is SQL
NULL
, the value returned is0
- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set
-
getShort
Retrieves the value of the designated column in the current row of thisResultSet
object as ashort
in the Java programming language.- Specified by:
getShort
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column- Returns:
- the column value; if the value is SQL
NULL
, the value returned is0
- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set
-
getInt
Retrieves the value of the designated column in the current row of thisResultSet
object as anint
in the Java programming language.- Specified by:
getInt
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column- Returns:
- the column value; if the value is SQL
NULL
, the value returned is0
- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set
-
getLong
Retrieves the value of the designated column in the current row of thisResultSet
object as along
in the Java programming language.- Specified by:
getLong
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column- Returns:
- the column value; if the value is SQL
NULL
, the value returned is0
- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set
-
getFloat
Retrieves the value of the designated column in the current row of thisResultSet
object as afloat
in the Java programming language.- Specified by:
getFloat
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column- Returns:
- the column value; if the value is SQL
NULL
, the value returned is0
- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set
-
getDouble
Retrieves the value of the designated column in the current row of thisResultSet
object as adouble
in the Java programming language.- Specified by:
getDouble
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column- Returns:
- the column value; if the value is SQL
NULL
, the value returned is0
- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set
-
getBigDecimal
Deprecated.by java.sun.com as of JDK 1.2Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.math.BigDecimal
in the Java programming language.HSQLDB-Specific Information:
HSQLDB converts the result and sets the scale with BigDecimal.ROUND_HALF_DOWN.
- Specified by:
getBigDecimal
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnscale
- the number of digits to the right of the decimal point- Returns:
- the column value; if the value is SQL
NULL
, the value returned isnull
- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method
-
getBytes
Retrieves the value of the designated column in the current row of thisResultSet
object as abyte
array in the Java programming language. The bytes represent the raw values returned by the driver.- Specified by:
getBytes
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column- Returns:
- the column value; if the value is SQL
NULL
, the value returned isnull
- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set
-
getDate
Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.sql.Date
object in the Java programming language.- Specified by:
getDate
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column- Returns:
- the column value; if the value is SQL
NULL
, the value returned isnull
- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set
-
getTime
Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.sql.Time
object in the Java programming language.- Specified by:
getTime
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column- Returns:
- the column value;
if the value is SQL
NULL
, the value returned isnull
- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set
-
getTimestamp
Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.sql.Timestamp
object in the Java programming language.- Specified by:
getTimestamp
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column- Returns:
- the column value; if the value is SQL
NULL
, the value returned isnull
- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set
-
getAsciiStream
Retrieves the value of the designated column in the current row of thisResultSet
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 largeLONGVARCHAR
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 getter method implicitly closes the stream. Also, a stream may return
0
when the methodavailable
is called whether there is data available or not.- Specified by:
getAsciiStream
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column- Returns:
- a Java input stream that delivers the database column value
as a stream of one-byte ASCII characters.
If the value is SQL
NULL
, the value returned isnull
. - Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set- See Also:
-
getUnicodeStream
Deprecated.usegetCharacterStream
insteadRetrieves the value of the designated column in the current row of thisResultSet
object as a stream of two-byte Unicode characters. The first byte is the high byte; the second byte is the low byte. The value can then be read in chunks from the stream. This method is particularly suitable for retrieving largeLONGVARCHAR
values. The JDBC technology-enabled driver will do any necessary conversion from the database format into Unicode.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 getter method implicitly closes the stream. Also, a stream may return
0
when the methodInputStream.available
is called, whether there is data available or not.- Specified by:
getUnicodeStream
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column- Returns:
- a Java input stream that delivers the database column value
as a stream of two-byte Unicode characters.
If the value is SQL
NULL
, the value returned isnull
. - Throws:
SQLException
- if a database access error occurs or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- See Also:
-
getBinaryStream
Retrieves the value of the designated column in the current row of thisResultSet
object as a stream of uninterpretedbyte
s. The value can then be read in chunks from the stream. This method is particularly suitable for retrieving largeLONGVARBINARY
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 getter method implicitly closes the stream. Also, a stream may return
0
when the methodavailable
is called whether there is data available or not.- Specified by:
getBinaryStream
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column- Returns:
- a Java input stream that delivers the database column value
as a stream of uninterpreted bytes;
if the value is SQL
NULL
, the result isnull
- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set
-
getWarnings
Retrieves the first warning reported by calls on thisResultSet
object. Subsequent warnings on thisResultSet
object will be chained to theSQLWarning
object that this method returns.The warning chain is automatically cleared each time a new row is read. This method may not be called on a
ResultSet
object that has been closed; doing so will cause anSQLException
to be thrown.Note: This warning chain only covers warnings caused by
ResultSet
methods. Any warning caused byStatement
methods (such as reading OUT parameters) will be chained on theStatement
object.HSQLDB-Specific Information:
HSQLDB does not produce
SQLWarning
objects on any ResultSet object warning chain; this method always returnsnull
.- Specified by:
getWarnings
in interfaceResultSet
- Returns:
- the first
SQLWarning
object reported ornull
if there are none - Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set
-
clearWarnings
Clears all warnings reported on thisResultSet
object. After this method is called, the methodgetWarnings
returnsnull
until a new warning is reported for thisResultSet
object.HSQLDB-Specific Information:
HSQLDB does not produce
SQLWarning
objects on any ResultSet object warning chain; calls to this method are ignored.- Specified by:
clearWarnings
in interfaceResultSet
- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set
-
getCursorName
Retrieves the name of the SQL cursor used by thisResultSet
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 ensure that the cursor has the proper isolation level to support update, the cursor's
SELECT
statement should be of the formSELECT FOR UPDATE
. IfFOR UPDATE
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 aResultSet
object is also the current row of this SQL cursor.HSQLDB-Specific Information:
HSQLDB supports this feature when the cursor has a name.
- Specified by:
getCursorName
in interfaceResultSet
- Returns:
- the SQL name for this
ResultSet
object's cursor - Throws:
SQLException
- if a database access error occurs or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method
-
getMetaData
Retrieves the number, types and properties of thisResultSet
object's columns.HSQLDB-Specific Information:
Example:
The following code fragment creates a
ResultSet
object rs, creates aResultSetMetaData
object rsmd, and uses rsmd to find out how many columns rs has and whether the first column in rs can be used in aWHERE
clause.ResultSet rs = stmt.executeQuery("SELECT a, b, c FROM TABLE2"); ResultSetMetaData rsmd = rs.getMetaData();
int numberOfColumns = rsmd.getColumnCount();
boolean b = rsmd.isSearchable(1);
Changes:With version 2.0, the engine's SQL implementation has been completely rewritten. Changes to this class and the implementation of ResultSetMetaData reflect the engine's new capabilities and provide more accurate information.
changes to consider:
- isAutoIncrement(int) always returned
false
- isNullable(int) returns the nullability of a real table or view
column in the ResultSet and returns
columnNoNulls
for non-base-column ResultSet columns (columns of the ResultSet that are based on expressions or aggregates). - getColumnDisplaySize(int) returns correct results even for expression columns.
- getPrecision(int) returns the correct precision even for expression columns.
- getScale(int) returns the correct precision even for expression columns.
- getCatalogName(int) returns the catalog name of the database.
- Specified by:
getMetaData
in interfaceResultSet
- Returns:
- the description of this
ResultSet
object's columns - Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set- See Also:
- isAutoIncrement(int) always returned
-
getObject
Gets the value of the designated column in the current row of this
ResultSet
object as anObject
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. If the value is an SQL
NULL
, the driver returns a Javanull
.This method may also be used to read database-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.If
Connection.getTypeMap
does not throw aSQLFeatureNotSupportedException
, then 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())
. IfConnection.getTypeMap
does throw aSQLFeatureNotSupportedException
, then structured values are not supported, and distinct values are mapped to the default Java class as determined by the underlying SQL type of the DISTINCT type.- Specified by:
getObject
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...- Returns:
- a
java.lang.Object
holding the column value - Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set
-
getObject
Gets the value of the designated column in the current row of this
ResultSet
object as anObject
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. If the value is an SQL
NULL
, the driver returns a Javanull
.This method may also be used to read database-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())
.- Specified by:
getObject
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column- Returns:
- a
java.lang.Object
holding the column value - Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set
-
findColumn
Maps the givenResultSet
column label to itsResultSet
column index.HSQLDB-Specific Information:
Starting with 1.9.x, HSQLDB does an exhaustive search, backed by a cache lookup (to improve performance for subsequent invocations with a given input).
Upon careful investigation of the JDBC specification and the behaviour of existing JDBC drivers, there is actually nothing preventing the findColumn method from doing an exhaustive search, as long as it conforms to the following rules (which describe the new implementation):
- the entire search is case insensitive
- each search iteration occurs from leftmost to rightmost column, returning the first match encountered
- the first pass matches only bare column labels
- the second pass matches only simple column names
- further passes conform to the identifier qualification and identifier quoting rules of the engine
Instead:
- a third pass matches simple table-dot-column qualified names
- a fourth pass matches simple schema-dot-table-dot-column qualified column names
- Specified by:
findColumn
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column- Returns:
- the column index of the given column name
- Throws:
SQLException
- if theResultSet
object does not contain a column labeledcolumnLabel
, a database access error occurs or this method is called on a closed result set
-
getCharacterStream
Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.io.Reader
object.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
getCharacterStream
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...- Returns:
- a
java.io.Reader
object that contains the column value; if the value is SQLNULL
, the value returned isnull
in the Java programming language. - Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set- Since:
- JDK 1.2
-
getCharacterStream
Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.io.Reader
object.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
getCharacterStream
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column- Returns:
- a
java.io.Reader
object that contains the column value; if the value is SQLNULL
, the value returned isnull
in the Java programming language - Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set- Since:
- JDK 1.2
-
getBigDecimal
Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.math.BigDecimal
with full precision.- Specified by:
getBigDecimal
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...- Returns:
- the column value (full precision);
if the value is SQL
NULL
, the value returned isnull
in the Java programming language. - Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set- Since:
- JDK 1.2
-
getBigDecimal
Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.math.BigDecimal
with full precision.- Specified by:
getBigDecimal
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column- Returns:
- the column value (full precision);
if the value is SQL
NULL
, the value returned isnull
in the Java programming language. - Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set- Since:
- JDK 1.2
-
isBeforeFirst
Retrieves whether the cursor is before the first row in thisResultSet
object.(JDBC4 Clarification:)
Note:Support for the
isBeforeFirst
method is optional forResultSet
s with a result set type ofTYPE_FORWARD_ONLY
- Specified by:
isBeforeFirst
in interfaceResultSet
- Returns:
true
if the cursor is before the first row;false
if the cursor is at any other position or the result set contains no rows- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
isAfterLast
Retrieves whether the cursor is after the last row in thisResultSet
object.(JDBC4 Clarification:)
Note:Support for the
isAfterLast
method is optional forResultSet
s with a result set type ofTYPE_FORWARD_ONLY
- Specified by:
isAfterLast
in interfaceResultSet
- Returns:
true
if the cursor is after the last row;false
if the cursor is at any other position or the result set contains no rows- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
isFirst
Retrieves whether the cursor is on the first row of thisResultSet
object.(JDBC4 Clarification:)
Note:Support for the
isFirst
method is optional forResultSet
s with a result set type ofTYPE_FORWARD_ONLY
- Specified by:
isFirst
in interfaceResultSet
- Returns:
true
if the cursor is on the first row;false
otherwise- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
isLast
Retrieves whether the cursor is on the last row of thisResultSet
object. Note: Calling the methodisLast
may be expensive because the JDBC driver might need to fetch ahead one row in order to determine whether the current row is the last row in the result set.(JDBC4 Clarification:)
Note: Support for the
isLast
method is optional forResultSet
s with a result set type ofTYPE_FORWARD_ONLY
- Specified by:
isLast
in interfaceResultSet
- Returns:
true
if the cursor is on the last row;false
otherwise- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
beforeFirst
Moves the cursor to the front of thisResultSet
object, just before the first row. This method has no effect if the result set contains no rows.- Specified by:
beforeFirst
in interfaceResultSet
- Throws:
SQLException
- if a database access error occurs, this method is called on a closed result set or the result set type isTYPE_FORWARD_ONLY
SQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
afterLast
Moves the cursor to the end of thisResultSet
object, just after the last row. This method has no effect if the result set contains no rows.- Specified by:
afterLast
in interfaceResultSet
- Throws:
SQLException
- if a database access error occurs, this method is called on a closed result set or the result set type isTYPE_FORWARD_ONLY
SQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
first
Moves the cursor to the first row in thisResultSet
object.- Specified by:
first
in interfaceResultSet
- Returns:
true
if the cursor is on a valid row;false
if there are no rows in the result set- Throws:
SQLException
- if a database access error occurs, this method is called on a closed result set or the result set type isTYPE_FORWARD_ONLY
SQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
last
Moves the cursor to the last row in thisResultSet
object.- Specified by:
last
in interfaceResultSet
- Returns:
true
if the cursor is on a valid row;false
if there are no rows in the result set- Throws:
SQLException
- if a database access error occurs, this method is called on a closed result set or the result set type isTYPE_FORWARD_ONLY
SQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
getRow
Retrieves the current row number. The first row is number 1, the second number 2, and so on.(JDBC4 Clarification:)
Note:Support for the
getRow
method is optional forResultSet
s with a result set type ofTYPE_FORWARD_ONLY
- Specified by:
getRow
in interfaceResultSet
- Returns:
- the current row number;
0
if there is no current row - Throws:
SQLException
- if a database access error occurs or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
absolute
Moves the cursor to the given row number in thisResultSet
object.If the row number is positive, the cursor moves to the given row number with respect to the beginning of the result set. The first row is row 1, the second is row 2, and so on.
If the given row number is negative, the cursor moves to an absolute row position with respect to the end of the result set. For example, calling the method
absolute(-1)
positions the cursor on the last row; calling the methodabsolute(-2)
moves the cursor to the next-to-last row, and so on.An attempt to position the cursor beyond the first/last row in the result set leaves the cursor before the first row or after the last row.
Note: Calling
absolute(1)
is the same as callingfirst()
. Callingabsolute(-1)
is the same as callinglast()
.- Specified by:
absolute
in interfaceResultSet
- Parameters:
row
- the number of the row to which the cursor should move. A positive number indicates the row number counting from the beginning of the result set; a negative number indicates the row number counting from the end of the result set- Returns:
true
if the cursor is moved to a position in thisResultSet
object;false
if the cursor is before the first row or after the last row- Throws:
SQLException
- if a database access error occurs, this method is called on a closed result set or the result set type isTYPE_FORWARD_ONLY
SQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
relative
Moves the cursor a relative number of rows, either positive or negative. Attempting to move beyond the first/last row in the result set positions the cursor before/after the first/last row. Callingrelative(0)
is valid, but does not change the cursor position.Note: Calling the method
relative(1)
is identical to calling the methodnext()
and calling the methodrelative(-1)
is identical to calling the methodprevious()
.- Specified by:
relative
in interfaceResultSet
- Parameters:
rows
- anint
specifying the number of rows to move from the current row; a positive number moves the cursor forward; a negative number moves the cursor backward- Returns:
true
if the cursor is on a row;false
otherwise- Throws:
SQLException
- if a database access error occurs, this method is called on a closed result set, there is no current row, or the result set type isTYPE_FORWARD_ONLY
SQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
previous
Moves the cursor to the previous row in thisResultSet
object.(JDBC4 clarification:) When a call to the
previous
method returnsfalse
, the cursor is positioned before the first row. Any invocation of aResultSet
method which requires a current row will result in aSQLException
being thrown.(JDBC4 clarification:) If an input stream is open for the current row, a call to the method
previous
will implicitly close it. AResultSet
object's warning change is cleared when a new row is read.- Specified by:
previous
in interfaceResultSet
- Returns:
- (JDBC4 clarification:)
true
if the cursor is now positioned on a valid row;false
if the cursor is positioned before the first row - Throws:
SQLException
- if a database access error occurs; this method is called on a closed result set or the result set type isTYPE_FORWARD_ONLY
SQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
setFetchDirection
Gives a hint as to the direction in which the rows in thisResultSet
object will be processed. The initial value is determined by theStatement
object that produced thisResultSet
object. The fetch direction may be changed at any time.HSQLDB-Specific Information:
HSQLDB does not need this hint. However, as mandated by the JDBC standard, an SQLException is thrown if the result set type is TYPE_FORWARD_ONLY and a fetch direction other than FETCH_FORWARD is requested.
- Specified by:
setFetchDirection
in interfaceResultSet
- Parameters:
direction
- anint
specifying the suggested fetch direction; one ofResultSet.FETCH_FORWARD
,ResultSet.FETCH_REVERSE
, orResultSet.FETCH_UNKNOWN
- Throws:
SQLException
- if a database access error occurs; this method is called on a closed result set or the result set type isTYPE_FORWARD_ONLY
and the fetch direction is notFETCH_FORWARD
- Since:
- JDK 1.2
- See Also:
-
getFetchDirection
Retrieves the fetch direction for thisResultSet
object.HSQLDB-Specific Information:
HSQLDB does not depend on fetch direction and always returns
FETCH_FORWARD
, but the value has no real meaning.- Specified by:
getFetchDirection
in interfaceResultSet
- Returns:
- the current fetch direction for this
ResultSet
object - Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set- Since:
- JDK 1.2
- See Also:
-
setFetchSize
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 thisResultSet
object. If the fetch size specified is zero, the JDBC driver ignores the value and is free to make its own best guess as to what the fetch size should be. The default value is set by theStatement
object that created the result set. The fetch size may be changed at any time.HSQLDB-Specific Information:
HSQLDB may not build and return a result set as a whole. Therefore the supplied, non-zero, fetch size value is used for some ResultSet objects.
- Specified by:
setFetchSize
in interfaceResultSet
- Parameters:
rows
- the number of rows to fetch- Throws:
SQLException
- if a database access error occurs; this method (JDBC4 Clarification:) is called on a closed result set or the (JDBC4 clarification:) conditionrows >= 0
is not satisfied- Since:
- JDK 1.2
- See Also:
-
getFetchSize
Retrieves the fetch size for thisResultSet
object.HSQLDB-Specific Information:
HSQLDB may not build and return a result set as a whole. The actual fetch size for this result set is returned.
- Specified by:
getFetchSize
in interfaceResultSet
- Returns:
- the current fetch size for this
ResultSet
object - Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set- Since:
- JDK 1.2
- See Also:
-
getType
Retrieves the type of thisResultSet
object. The type is determined by theStatement
object that created the result set.HSQLDB-Specific Information:
HSQLDB accurately reports the actual runtime scrollability of this result set instance.
- Specified by:
getType
in interfaceResultSet
- Returns:
ResultSet.TYPE_FORWARD_ONLY
,ResultSet.TYPE_SCROLL_INSENSITIVE
, orResultSet.TYPE_SCROLL_SENSITIVE
- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set- Since:
- JDK 1.2
-
getConcurrency
Retrieves the concurrency mode of thisResultSet
object. The concurrency used is determined by theStatement
object that created the result set.HSQLDB-Specific Information:
HSQLDB supports updatable result sets and accurately reports the actual runtime concurrency of this result set instance.
- Specified by:
getConcurrency
in interfaceResultSet
- Returns:
- the concurrency type, either
ResultSet.CONCUR_READ_ONLY
orResultSet.CONCUR_UPDATABLE
- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set- Since:
- JDK 1.2
-
rowUpdated
Retrieves whether the current row has been updated. The value returned depends on whether or not the result set can detect updates.HSQLDB-Specific Information:
HSQLDB supports updatable result sets and accurately reports the actual value.
- Specified by:
rowUpdated
in interfaceResultSet
- Returns:
true
if the current row is detected to have been visibly updated by the owner or another;false
otherwise- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
- See Also:
-
rowInserted
Retrieves whether the current row has had an insertion. The value returned depends on whether or not thisResultSet
object can detect visible inserts.HSQLDB-Specific Information:
HSQLDB supports updatable result sets and accurately reports the actual value.
- Specified by:
rowInserted
in interfaceResultSet
- Returns:
true
if the current row is detected to have been inserted;false
otherwise- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
- See Also:
-
rowDeleted
Retrieves whether a row has been deleted. A deleted row may leave a visible "hole" in a result set. This method can be used to detect holes in a result set. The value returned depends on whether or not thisResultSet
object can detect deletions.(JDBC4 Clarification:)
Note: Support for the
rowDeleted
method is optional with a result set concurrency ofCONCUR_READ_ONLY
HSQLDB-Specific Information:
HSQLDB supports updatable result sets and accurately reports the actual value.
- Specified by:
rowDeleted
in interfaceResultSet
- Returns:
true
if the current row is detected to have been deleted by the owner or another;false
otherwise- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
- See Also:
-
updateNull
(JDBC4 clarification:) Updates the designated column with anull
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
updateNull
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
updateBoolean
Updates the designated column with aboolean
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
updateBoolean
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...x
- the new column value- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
updateByte
Updates the designated column with abyte
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
updateByte
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...x
- the new column value- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
updateShort
Updates the designated column with ashort
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
updateShort
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...x
- the new column value- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
updateInt
Updates the designated column with anint
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
updateInt
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...x
- the new column value- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
updateLong
Updates the designated column with along
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
updateLong
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...x
- the new column value- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
updateFloat
Updates the designated column with afloat
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
updateFloat
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...x
- the new column value- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
updateDouble
Updates the designated column with adouble
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
updateDouble
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...x
- the new column value- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
updateBigDecimal
Updates the designated column with ajava.math.BigDecimal
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
updateBigDecimal
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...x
- the new column value- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
updateString
Updates the designated column with aString
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
updateString
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...x
- the new column value- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
updateBytes
Updates the designated column with abyte
array value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
updateBytes
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...x
- the new column value- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
updateDate
Updates the designated column with ajava.sql.Date
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
updateDate
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...x
- the new column value- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
updateTime
Updates the designated column with ajava.sql.Time
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
updateTime
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...x
- the new column value- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
updateTimestamp
Updates the designated column with ajava.sql.Timestamp
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
updateTimestamp
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...x
- the new column value- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
updateAsciiStream
(JDBC4 clarification:) Updates the designated column with an ascii stream value, which will have the specified number of bytes. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
updateAsciiStream
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...x
- the new column valuelength
- the length of the stream- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
updateBinaryStream
(JDBC4 clarification:) Updates the designated column with a binary stream value, which will have the specified number of bytes. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
updateBinaryStream
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...x
- the new column valuelength
- the length of the stream- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
updateCharacterStream
(JDBC4 clarification:) Updates the designated column with a character stream value, which will have the specified number of (CHECKME: characters?) bytes. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
updateCharacterStream
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...x
- the new column valuelength
- the length of the stream- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
updateObject
Updates the designated column with anObject
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.(JDBC clarification:) If the second argument is an
InputStream
then the stream must contain the number of bytes specified by scaleOrLength. If the second argument is aReader
then the reader must contain the number of characters specified by scaleOrLength. If these conditions are not true the driver will generate aSQLException
when the statement is executed.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
updateObject
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...x
- the new column valuescaleOrLength
- for an object ofjava.math.BigDecimal
, this is the number of digits after the decimal point. For Java Object typesInputStream
andReader
, this is the length of the data in the stream or reader. For all other types, this value will be ignored.- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
updateObject
Updates the designated column with anObject
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
updateObject
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...x
- the new column value- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
updateNull
Updates the designated column with anull
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
updateNull
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
updateBoolean
Updates the designated column with aboolean
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
updateBoolean
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnx
- the new column value- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
updateByte
Updates the designated column with abyte
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
updateByte
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnx
- the new column value- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
updateShort
Updates the designated column with ashort
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
updateShort
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnx
- the new column value- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
updateInt
Updates the designated column with anint
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
updateInt
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnx
- the new column value- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
updateLong
Updates the designated column with along
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
updateLong
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnx
- the new column value- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
updateFloat
Updates the designated column with afloat
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
updateFloat
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnx
- the new column value- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
updateDouble
Updates the designated column with adouble
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
updateDouble
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnx
- the new column value- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
updateBigDecimal
Updates the designated column with ajava.sql.BigDecimal
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
updateBigDecimal
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnx
- the new column value- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
updateString
Updates the designated column with aString
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
updateString
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnx
- the new column value- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
updateBytes
Updates the designated column with a byte array value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
updateBytes
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnx
- the new column value- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
updateDate
Updates the designated column with ajava.sql.Date
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
updateDate
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnx
- the new column value- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
updateTime
Updates the designated column with ajava.sql.Time
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
updateTime
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnx
- the new column value- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
updateTimestamp
Updates the designated column with ajava.sql.Timestamp
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
updateTimestamp
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnx
- the new column value- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
updateAsciiStream
(JDBC4 clarification:) Updates the designated column with an ascii stream value, which will have the specified number of bytes. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
updateAsciiStream
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnx
- the new column valuelength
- the length of the stream- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
updateBinaryStream
(JDBC4 clarification:) Updates the designated column with a binary stream value, which will have the specified number of bytes. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
updateBinaryStream
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnx
- the new column valuelength
- the length of the stream- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
updateCharacterStream
public void updateCharacterStream(String columnLabel, Reader reader, int length) throws SQLException (JDBC4 clarification) Updates the designated column with a character stream value, which will have the specified number of (CHECKME: characters?) bytes. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
updateCharacterStream
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnreader
- thejava.io.Reader
object containing the new column valuelength
- the length of the stream- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
updateObject
Updates the designated column with anObject
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.(JDBC4 Clarification:) If the second argument is an
InputStream
then the stream must contain the number of bytes specified by scaleOrLength. If the second argument is aReader
then the reader must contain the number of characters specified by scaleOrLength. If these conditions are not true the driver will generate aSQLException
when the statement is executed.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
updateObject
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnx
- the new column valuescaleOrLength
- for an object ofjava.math.BigDecimal
, this is the number of digits after the decimal point. For Java Object typesInputStream
andReader
, this is the length of the data in the stream or reader. For all other types, this value will be ignored.- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
updateObject
Updates the designated column with anObject
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
updateObject
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnx
- the new column value- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
insertRow
Inserts the contents of the insert row into thisResultSet
object and into the database. The cursor must be on the insert row when this method is called.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
insertRow
in interfaceResultSet
- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
, this method is called on a closed result set, if this method is called when the cursor is not on the insert row, or if not all of non-nullable columns in the insert row have been given a non-null valueSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
updateRow
Updates the underlying database with the new contents of the current row of thisResultSet
object. This method cannot be called when the cursor is on the insert row.HSQLDB-Specific Information:
HSQLDB supports this feature.
After updating any values in the current row, it is not possible to move the cursor position without calling this method, or alternatively calling cancelRowUpdates() to abandon the row update.
- Specified by:
updateRow
in interfaceResultSet
- Throws:
SQLException
- if a database access error occurs; the result set concurrency isCONCUR_READ_ONLY
; this method is called on a closed result set or if this method is called when the cursor is on the insert rowSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
deleteRow
Deletes the current row from thisResultSet
object and from the underlying database. This method cannot be called when the cursor is on the insert row.HSQLDB-Specific Information:
HSQLDB supports this feature.
After a successful call to this method, the row is deleted.
- Specified by:
deleteRow
in interfaceResultSet
- Throws:
SQLException
- if a database access error occurs; the result set concurrency isCONCUR_READ_ONLY
; this method is called on a closed result set or if this method is called when the cursor is on the insert rowSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
refreshRow
Refreshes the current row with its most recent value in the database. This method cannot be called when the cursor is on the insert row.The
refreshRow
method provides a way for an application to explicitly tell the JDBC driver to refetch a row(s) from the database. An application may want to callrefreshRow
when caching or prefetching is being done by the JDBC driver to fetch the latest value of a row from the database. The JDBC driver may actually refresh multiple rows at once if the fetch size is greater than one.All values are refetched subject to the transaction isolation level and cursor sensitivity. If
refreshRow
is called after calling an updater method, but before calling the methodupdateRow
, then the updates made to the row are lost. Calling the methodrefreshRow
frequently will likely slow performance.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
refreshRow
in interfaceResultSet
- Throws:
SQLException
- if a database access error occurs; this method is called on a closed result set; the result set type isTYPE_FORWARD_ONLY
or if this method is called when the cursor is on the insert rowSQLFeatureNotSupportedException
- if the JDBC driver does not support this method or this method is not supported for the specified result set type and result set concurrency.- Since:
- JDK 1.2
-
cancelRowUpdates
Cancels the updates made to the current row in thisResultSet
object. This method may be called after calling an updater method(s) and before calling the methodupdateRow
to roll back the updates made to a row. If no updates have been made orupdateRow
has already been called, this method has no effect.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
cancelRowUpdates
in interfaceResultSet
- Throws:
SQLException
- if a database access error occurs; this method is called on a closed result set; the result set concurrency isCONCUR_READ_ONLY
or if this method is called when the cursor is on the insert rowSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
moveToInsertRow
Moves the cursor to the insert row. The current cursor position is remembered while the cursor is positioned on the insert row. The insert row is a special row associated with an updatable result set. It is essentially a buffer where a new row may be constructed by calling the updater methods prior to inserting the row into the result set. Only the updater, getter, andinsertRow
methods may be called when the cursor is on the insert row. All of the columns in a result set must be given a value each time this method is called before callinginsertRow
. An updater method must be called before a getter method can be called on a column value.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
moveToInsertRow
in interfaceResultSet
- Throws:
SQLException
- if a database access error occurs; this method is called on a closed result set or the result set concurrency isCONCUR_READ_ONLY
SQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
moveToCurrentRow
Moves the cursor to the remembered cursor position, usually the current row. This method has no effect if the cursor is not on the insert row.HSQLDB-Specific Information:
HSQLDB supports this feature.
- Specified by:
moveToCurrentRow
in interfaceResultSet
- Throws:
SQLException
- if a database access error occurs, this method is called on a closed result set or the result set concurrency isCONCUR_READ_ONLY
SQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
getStatement
Retrieves theStatement
object that produced thisResultSet
object. If the result set was generated some other way, such as by aDatabaseMetaData
method, this method may returnnull
.- Specified by:
getStatement
in interfaceResultSet
- Returns:
- the
Statement
object that produced thisResultSet
object ornull
if the result set was produced some other way - Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set- Since:
- JDK 1.2
-
getObject
Retrieves the value of the designated column in the current row of thisResultSet
object as anObject
in the Java programming language. If the value is an SQLNULL
, the driver returns a Javanull
. This method uses the givenMap
object for the custom mapping of the SQL structured or distinct type that is being retrieved.HSQLDB-Specific Information:
HSQLDB supports this feature, but ignores the map.
- Specified by:
getObject
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...map
- ajava.util.Map
object that contains the mapping from SQL type names to classes in the Java programming language- Returns:
- an
Object
in the Java programming language representing the SQL value - Throws:
SQLException
- if a database access error occurs or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
getRef
Retrieves the value of the designated column in the current row of thisResultSet
object as aRef
object in the Java programming language.HSQLDB-Specific Information:
HSQLDB does not support this feature; this method always throws an
SQLException
stating that the operation is not supported.- Specified by:
getRef
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...- Returns:
- a
Ref
object representing an SQLREF
value - Throws:
SQLException
- if a database access error occurs or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
getBlob
Retrieves the value of the designated column in the current row of thisResultSet
object as aBlob
object in the Java programming language.HSQLDB-Specific Information:
HSQLDB 2.0 supports this feature for objects of type BLOB and BINARY. The Blob returned for BINARY objects is a memory object. The Blob return for BLOB objects is not held entirely in memory. Its contents are fetched from the database when its getXXX() methods are called.
- Specified by:
getBlob
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...- Returns:
- a
Blob
object representing the SQLBLOB
value in the specified column - Throws:
SQLException
- if a database access error occurs or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
getClob
Retrieves the value of the designated column in the current row of thisResultSet
object as aClob
object in the Java programming language.HSQLDB-Specific Information:
HSQLDB 2.0 supports this feature for objects of type CLOB and the variations of CHAR. The Clob returned for CHAR objects is a memory object. The Clob return for CLOB objects is not held entirely in memory. Its contents are fetched from the database when its getXXX() methods are called.
- Specified by:
getClob
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...- Returns:
- a
Clob
object representing the SQLCLOB
value in the specified column - Throws:
SQLException
- if a database access error occurs or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
getArray
Retrieves the value of the designated column in the current row of thisResultSet
object as anArray
object in the Java programming language.HSQLDB-Specific Information:
From version 2.0, HSQLDB supports array types.
- Specified by:
getArray
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...- Returns:
- an
Array
object representing the SQLARRAY
value in the specified column - Throws:
SQLException
- if a database access error occurs or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
getObject
Retrieves the value of the designated column in the current row of thisResultSet
object as anObject
in the Java programming language. If the value is an SQLNULL
, the driver returns a Javanull
. This method uses the specifiedMap
object for custom mapping if appropriate.HSQLDB-Specific Information:
HSQLDB supports this feature. But the Map parameter is ignored.
- Specified by:
getObject
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnmap
- ajava.util.Map
object that contains the mapping from SQL type names to classes in the Java programming language- Returns:
- an
Object
representing the SQL value in the specified column - Throws:
SQLException
- if a database access error occurs or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
getRef
Retrieves the value of the designated column in the current row of thisResultSet
object as aRef
object in the Java programming language.HSQLDB-Specific Information:
Including 2.0, HSQLDB does not support reference types; this method always throws an
SQLException
stating that the operation is not supported.- Specified by:
getRef
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column- Returns:
- a
Ref
object representing the SQLREF
value in the specified column - Throws:
SQLException
- if a database access error occurs or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
getBlob
Retrieves the value of the designated column in the current row of thisResultSet
object as aBlob
object in the Java programming language.HSQLDB-Specific Information:
HSQLDB 2.0 supports this feature for objects of type BLOB and BINARY. The Blob returned for BINARY objects is a memory object. The Blob return for BLOB objects is not held entirely in memory. Its contents are fetched from the database when its getXXX() methods are called.
- Specified by:
getBlob
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column- Returns:
- a
Blob
object representing the SQLBLOB
value in the specified column - Throws:
SQLException
- if a database access error occurs or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
getClob
Retrieves the value of the designated column in the current row of thisResultSet
object as aClob
object in the Java programming language.HSQLDB-Specific Information:
HSQLDB 2.0 supports this feature for objects of type CLOB and the variations of CHAR. The Clob returned for CHAR objects is a memory object. The Clob return for CLOB objects is not held entirely in memory. Its contents are fetched from the database when its getXXX() methods are called.
- Specified by:
getClob
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column- Returns:
- a
Clob
object representing the SQLCLOB
value in the specified column - Throws:
SQLException
- if a database access error occurs or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
getArray
Retrieves the value of the designated column in the current row of thisResultSet
object as anArray
object in the Java programming language.HSQLDB-Specific Information:
From version 2.0, HSQLDB supports array types.
- Specified by:
getArray
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column- Returns:
- an
Array
object representing the SQLARRAY
value in the specified column - Throws:
SQLException
- if a database access error occurs or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.2
-
getDate
Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.sql.Date
object in the Java programming language. This method uses the given calendar to construct an appropriate millisecond value for the date if the underlying database does not store timezone information.- Specified by:
getDate
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...cal
- thejava.util.Calendar
object to use in constructing the date- Returns:
- the column value as a
java.sql.Date
object; if the value is SQLNULL
, the value returned isnull
in the Java programming language - Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set- Since:
- JDK 1.2
-
getDate
Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.sql.Date
object in the Java programming language. This method uses the given calendar to construct an appropriate millisecond value for the date if the underlying database does not store timezone information.- Specified by:
getDate
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columncal
- thejava.util.Calendar
object to use in constructing the date- Returns:
- the column value as a
java.sql.Date
object; if the value is SQLNULL
, the value returned isnull
in the Java programming language - Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set- Since:
- JDK 1.2
-
getTime
Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.sql.Time
object in the Java programming language. This method uses the given calendar to construct an appropriate millisecond value for the time if the underlying database does not store timezone information.HSQLDB-Specific Information:
The JDBC specification for this method is vague. HSQLDB interprets the specification as follows:
- If the SQL type of the column is WITH TIME ZONE, then the UTC value of the returned java.sql.Time object is the UTC of the SQL value without modification. In other words, the Calendar object is not used.
- If the SQL type of the column is WITHOUT TIME ZONE, then the UTC value of the returned java.sql.Time is correct for the given Calendar's time zone.
- If the cal argument is null, it it ignored and the method returns the same Object as the method without the Calendar parameter.
- Specified by:
getTime
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...cal
- thejava.util.Calendar
object to use in constructing the time- Returns:
- the column value as a
java.sql.Time
object; if the value is SQLNULL
, the value returned isnull
in the Java programming language - Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set- Since:
- JDK 1.2
-
getTime
Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.sql.Time
object in the Java programming language. This method uses the given calendar to construct an appropriate millisecond value for the time if the underlying database does not store timezone information.HSQLDB-Specific Information:
The JDBC specification for this method is vague. HSQLDB interprets the specification as follows:
- If the SQL type of the column is WITH TIME ZONE, then the UTC value of the returned java.sql.Time object is the UTC of the SQL value without modification. In other words, the Calendar object is not used.
- If the SQL type of the column is WITHOUT TIME ZONE, then the UTC value of the returned java.sql.Time will represent the correct time for the time zone (including daylight saving time) of the given Calendar.
- If the cal argument is null, it it ignored and the method returns the same Object as the method without the Calendar parameter.
- Specified by:
getTime
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columncal
- thejava.util.Calendar
object to use in constructing the time- Returns:
- the column value as a
java.sql.Time
object; if the value is SQLNULL
, the value returned isnull
in the Java programming language - Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set- Since:
- JDK 1.2
-
getTimestamp
Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.sql.Timestamp
object in the Java programming language. This method uses the given calendar to construct an appropriate millisecond value for the timestamp if the underlying database does not store timezone information.HSQLDB-Specific Information:
The JDBC specification for this method is vague. HSQLDB interprets the specification as follows:
- If the SQL type of the column is WITH TIME ZONE, then the UTC value of the returned java.sql.Timestamp object is the UTC of the SQL value without modification. In other words, the Calendar object is not used.
- If the SQL type of the column is WITHOUT TIME ZONE, then the UTC value of the returned java.sql.Timestamp will represent the correct timestamp for the time zone (including daylight saving time) of the given Calendar object.
- In this case, if the cal argument is null, then the default Calendar of the JVM is used, which results in the same Object as one returned by the getTimestamp() methods without the Calendar parameter.
- Specified by:
getTimestamp
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...cal
- thejava.util.Calendar
object to use in constructing the timestamp- Returns:
- the column value as a
java.sql.Timestamp
object; if the value is SQLNULL
, the value returned isnull
in the Java programming language - Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set- Since:
- JDK 1.2
-
getTimestamp
Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.sql.Timestamp
object in the Java programming language. This method uses the given calendar to construct an appropriate millisecond value for the timestamp if the underlying database does not store timezone information.HSQLDB-Specific Information:
The JDBC specification for this method is vague. HSQLDB interprets the specification as follows:
- If the SQL type of the column is WITH TIME ZONE, then the UTC value of the returned java.sql.Timestamp object is the UTC of the SQL value without modification. In other words, the Calendar object is not used.
- If the SQL type of the column is WITHOUT TIME ZONE, then the UTC value of the returned java.sql.Timestamp is correct for the given Calendar object.
- If the cal argument is null, it it ignored and the method returns the same Object as the method without the Calendar parameter.
- Specified by:
getTimestamp
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columncal
- thejava.util.Calendar
object to use in constructing the date- Returns:
- the column value as a
java.sql.Timestamp
object; if the value is SQLNULL
, the value returned isnull
in the Java programming language - Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set- Since:
- JDK 1.2
-
getURL
Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.net.URL
object in the Java programming language.HSQLDB-Specific Information:
HSQLDB does not support the datalink type; this method always throws an
SQLException
stating that the operation is not supported.- Specified by:
getURL
in interfaceResultSet
- Parameters:
columnIndex
- the index of the column 1 is the first, 2 is the second,...- Returns:
- the column value as a
java.net.URL
object; if the value is SQLNULL
, the value returned isnull
in the Java programming language - Throws:
SQLException
- if a database access error occurs; this method is called on a closed result set or if a URL is malformedSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.4, HSQLDB 1.7.0
-
getURL
Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.net.URL
object in the Java programming language.HSQLDB-Specific Information:
HSQLDB does not support the datalink type; this method always throws an
SQLException
stating that the operation is not supported.- Specified by:
getURL
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column- Returns:
- the column value as a
java.net.URL
object; if the value is SQLNULL
, the value returned isnull
in the Java programming language - Throws:
SQLException
- if a database access error occur; this method is called on a closed result set or if a URL is malformedSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.4, HSQLDB 1.7.0
-
updateRef
Updates the designated column with ajava.sql.Ref
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB does not support reference types; this method always throws an
SQLException
stating that the operation is not supported.- Specified by:
updateRef
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...x
- the new column value- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.4, HSQLDB 1.7.0
-
updateRef
Updates the designated column with ajava.sql.Ref
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB does not support reference types; this method always throws an
SQLException
stating that the operation is not supported.- Specified by:
updateRef
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnx
- the new column value- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.4, HSQLDB 1.7.0
-
updateBlob
Updates the designated column with ajava.sql.Blob
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB 2.0 supports this feature for columns of type BLOB.
- Specified by:
updateBlob
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...x
- the new column value- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.4, HSQLDB 1.7.0
-
updateBlob
Updates the designated column with ajava.sql.Blob
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB 2.0 supports this feature for columns of type BLOB.
- Specified by:
updateBlob
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnx
- the new column value- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.4, HSQLDB 1.7.0
-
updateClob
Updates the designated column with ajava.sql.Clob
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB 2.0 supports this feature for columns of type CLOB.
- Specified by:
updateClob
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...x
- the new column value- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.4, HSQLDB 1.7.0
-
updateClob
Updates the designated column with ajava.sql.Clob
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB 2.0 supports this feature for columns of type CLOB.
- Specified by:
updateClob
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnx
- the new column value- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.4, HSQLDB 1.7.0
-
updateArray
Updates the designated column with ajava.sql.Array
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB does not support array types; this method always throws an
SQLException
stating that the operation is not supported.- Specified by:
updateArray
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...x
- the new column value- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.4, HSQLDB 1.7.0
-
updateArray
Updates the designated column with ajava.sql.Array
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB does not support array types; this method always throws an
SQLException
stating that the operation is not supported.- Specified by:
updateArray
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnx
- the new column value- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.4, HSQLDB 1.7.0
-
getRowId
Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.sql.RowId
object in the Java programming language.- Specified by:
getRowId
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second 2, ...- Returns:
- the column value; if the value is a SQL
NULL
the value returned isnull
- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.6, HSQLDB 2.0
-
getRowId
Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.sql.RowId
object in the Java programming language.HSQLDB-Specific Information:
HSQLDB does not support the RowId type; this method always throws an
SQLException
stating that the operation is not supported.- Specified by:
getRowId
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column- Returns:
- the column value ; if the value is a SQL
NULL
the value returned isnull
- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.6, HSQLDB 2.0
-
updateRowId
Updates the designated column with aRowId
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB does not support the RowId type; this method always throws an
SQLException
stating that the operation is not supported.- Specified by:
updateRowId
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second 2, ...x
- the column value- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.6, HSQLDB 2.0
-
updateRowId
Updates the designated column with aRowId
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.HSQLDB-Specific Information:
HSQLDB does not support the RowId type; this method always throws an
SQLException
stating that the operation is not supported.- Specified by:
updateRowId
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnx
- the column value- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.6, HSQLDB 2.0
-
getHoldability
Retrieves the holdability of thisResultSet
object- Specified by:
getHoldability
in interfaceResultSet
- Returns:
- either
ResultSet.HOLD_CURSORS_OVER_COMMIT
orResultSet.CLOSE_CURSORS_AT_COMMIT
- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result set- Since:
- JDK 1.6, HSQLDB 2.0
-
isClosed
Retrieves whether thisResultSet
object has been closed. AResultSet
is closed if the method close has been called on it, or if it is automatically closed.- Specified by:
isClosed
in interfaceResultSet
- Returns:
- true if this
ResultSet
object is closed; false if it is still open - Throws:
SQLException
- if a database access error occurs- Since:
- JDK 1.6, HSQLDB 2.0
-
updateNString
Updates the designated column with aString
value. It is intended for use when updatingNCHAR
,NVARCHAR
andLONGNVARCHAR
columns. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.- Specified by:
updateNString
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second 2, ...nString
- the value for the column to be updated- Throws:
SQLException
- if the driver does not support national character sets; if the driver can detect that a data conversion error could occur; this method is called on a closed result set, the result set concurrency isCONCUR_READ_ONLY
or if a database access error occursSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.6, HSQLDB 2.0
-
updateNString
Updates the designated column with aString
value. It is intended for use when updatingNCHAR
,NVARCHAR
andLONGNVARCHAR
columns. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.- Specified by:
updateNString
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnnString
- the value for the column to be updated- Throws:
SQLException
- if the driver does not support national character sets; if the driver can detect that a data conversion error could occur; this method is called on a closed result set; the result set concurrency isCONCUR_READ_ONLY
or if a database access error occursSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.6, HSQLDB 2.0
-
updateNClob
Updates the designated column with ajava.sql.NClob
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.- Specified by:
updateNClob
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second 2, ...nClob
- the value for the column to be updated- Throws:
SQLException
- if the driver does not support national character sets; if the driver can detect that a data conversion error could occur; this method is called on a closed result set, if a database access error occurs or the result set concurrency isCONCUR_READ_ONLY
SQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.6, HSQLDB 2.0
-
updateNClob
Updates the designated column with ajava.sql.NClob
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.- Specified by:
updateNClob
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnnClob
- the value for the column to be updated- Throws:
SQLException
- if the driver does not support national character sets; if the driver can detect that a data conversion error could occur; this method is called on a closed result set; if a database access error occurs or the result set concurrency isCONCUR_READ_ONLY
SQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.6, HSQLDB 2.0
-
getNClob
Retrieves the value of the designated column in the current row of thisResultSet
object as aNClob
object in the Java programming language.- Specified by:
getNClob
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...- Returns:
- a
NClob
object representing the SQLNCLOB
value in the specified column - Throws:
SQLException
- if the driver does not support national character sets; if the driver can detect that a data conversion error could occur; this method is called on a closed result set or if a database access error occursSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.6, HSQLDB 2.0
-
getNClob
Retrieves the value of the designated column in the current row of thisResultSet
object as aNClob
object in the Java programming language.- Specified by:
getNClob
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column- Returns:
- a
NClob
object representing the SQLNCLOB
value in the specified column - Throws:
SQLException
- if the driver does not support national character sets; if the driver can detect that a data conversion error could occur; this method is called on a closed result set or if a database access error occursSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.6, HSQLDB 2.0
-
getSQLXML
Retrieves the value of the designated column in the current row of thisResultSet
as ajava.sql.SQLXML
object in the Java programming language.- Specified by:
getSQLXML
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...- Returns:
- a
SQLXML
object that maps anSQL XML
value - Throws:
SQLException
- if a database access error occurs or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.6, HSQLDB 2.0
-
getSQLXML
Retrieves the value of the designated column in the current row of thisResultSet
as ajava.sql.SQLXML
object in the Java programming language.- Specified by:
getSQLXML
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column- Returns:
- a
SQLXML
object that maps anSQL XML
value - Throws:
SQLException
- if a database access error occurs or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.6, HSQLDB 2.0
-
updateSQLXML
Updates the designated column with ajava.sql.SQLXML
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.- Specified by:
updateSQLXML
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second 2, ...xmlObject
- the value for the column to be updated- Throws:
SQLException
- if a database access error occurs, this method is called on a closed result set, thejava.xml.transform.Result
,Writer
orOutputStream
has not been closed for theSQLXML
object, if there is an error processing the XML value or the result set concurrency isCONCUR_READ_ONLY
. ThegetCause
method of the exception may provide a more detailed exception, for example, if the stream does not contain valid XML.SQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.6, HSQLDB 2.0
-
updateSQLXML
Updates the designated column with ajava.sql.SQLXML
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.- Specified by:
updateSQLXML
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnxmlObject
- the column value- Throws:
SQLException
- if a database access error occurs, this method is called on a closed result set, thejava.xml.transform.Result
,Writer
orOutputStream
has not been closed for theSQLXML
object, if there is an error processing the XML value or the result set concurrency isCONCUR_READ_ONLY
. ThegetCause
method of the exception may provide a more detailed exception, for example, if the stream does not contain valid XML.SQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.6, HSQLDB 2.0
-
getNString
Retrieves the value of the designated column in the current row of thisResultSet
object as aString
in the Java programming language. It is intended for use when accessingNCHAR
,NVARCHAR
andLONGNVARCHAR
columns.- Specified by:
getNString
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...- Returns:
- the column value; if the value is SQL
NULL
, the value returned isnull
- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.6, HSQLDB 2.0
-
getNString
Retrieves the value of the designated column in the current row of thisResultSet
object as aString
in the Java programming language. It is intended for use when accessingNCHAR
,NVARCHAR
andLONGNVARCHAR
columns.- Specified by:
getNString
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column- Returns:
- the column value; if the value is SQL
NULL
, the value returned isnull
- Throws:
SQLException
- if a database access error occurs or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.6, HSQLDB 2.0
-
getNCharacterStream
Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.io.Reader
object. It is intended for use when accessingNCHAR
,NVARCHAR
andLONGNVARCHAR
columns.- Specified by:
getNCharacterStream
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...- Returns:
- a
java.io.Reader
object that contains the column value; if the value is SQLNULL
, the value returned isnull
in the Java programming language. - Throws:
SQLException
- if a database access error occurs or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.6, HSQLDB 2.0
-
getNCharacterStream
Retrieves the value of the designated column in the current row of thisResultSet
object as ajava.io.Reader
object. It is intended for use when accessingNCHAR
,NVARCHAR
andLONGNVARCHAR
columns.- Specified by:
getNCharacterStream
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column- Returns:
- a
java.io.Reader
object that contains the column value; if the value is SQLNULL
, the value returned isnull
in the Java programming language - Throws:
SQLException
- if a database access error occurs or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.6, HSQLDB 2.0
-
updateNCharacterStream
Updates the designated column with a character stream value, which will have the specified number of bytes. The driver does the necessary conversion from Java character format to the national character set in the database. It is intended for use when updatingNCHAR
,NVARCHAR
andLONGNVARCHAR
columns. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.- Specified by:
updateNCharacterStream
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...x
- the new column valuelength
- the length of the stream- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.6, HSQLDB 2.0
-
updateNCharacterStream
public void updateNCharacterStream(String columnLabel, Reader reader, long length) throws SQLException Updates the designated column with a character stream value, which will have the specified number of bytes. The driver does the necessary conversion from Java character format to the national character set in the database. It is intended for use when updatingNCHAR
,NVARCHAR
andLONGNVARCHAR
columns. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.- Specified by:
updateNCharacterStream
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnreader
- thejava.io.Reader
object containing the new column valuelength
- the length of the stream- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.6, HSQLDB 2.0
-
updateAsciiStream
Updates the designated column with an ascii stream value, which will have the specified number of bytes. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.- Specified by:
updateAsciiStream
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...x
- the new column valuelength
- the length of the stream- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.6, HSQLDB 2.0
-
updateBinaryStream
Updates the designated column with a binary stream value, which will have the specified number of bytes. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.- Specified by:
updateBinaryStream
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...x
- the new column valuelength
- the length of the stream- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.6, HSQLDB 2.0
-
updateCharacterStream
Updates the designated column with a character stream value, which will have the specified number of bytes. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.- Specified by:
updateCharacterStream
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...x
- the new column valuelength
- the length of the stream- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.6, HSQLDB 2.0
-
updateAsciiStream
Updates the designated column with an ascii stream value, which will have the specified number of bytes. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.- Specified by:
updateAsciiStream
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnx
- the new column valuelength
- the length of the stream- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.6, HSQLDB 2.0
-
updateBinaryStream
Updates the designated column with a binary stream value, which will have the specified number of bytes. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.- Specified by:
updateBinaryStream
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnx
- the new column valuelength
- the length of the stream- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.6, HSQLDB 2.0
-
updateCharacterStream
public void updateCharacterStream(String columnLabel, Reader reader, long length) throws SQLException Updates the designated column with a character stream value, which will have the specified number of bytes. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.- Specified by:
updateCharacterStream
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnreader
- thejava.io.Reader
object containing the new column valuelength
- the length of the stream- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.6, HSQLDB 2.0
-
updateBlob
Updates the designated column using the given input stream, which will have the specified number of bytes. When a very large ASCII value is input to aLONGVARCHAR
parameter, it may be more practical to send it via ajava.io.InputStream
. Data will be read from the stream as needed until end-of-file is reached. The JDBC driver will do any necessary conversion from ASCII to the database char format.Note: This stream object can either be a standard Java stream object or your own subclass that implements the standard interface.
The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the
updateRow
orinsertRow
methods are called to update the database.- Specified by:
updateBlob
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...inputStream
- An object that contains the data to set the parameter value to.length
- the number of bytes in the parameter data.- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.6, HSQLDB 2.0
-
updateBlob
public void updateBlob(String columnLabel, InputStream inputStream, long length) throws SQLException Updates the designated column using the given input stream, which will have the specified number of bytes. When a very large ASCII value is input to aLONGVARCHAR
parameter, it may be more practical to send it via ajava.io.InputStream
. Data will be read from the stream as needed until end-of-file is reached. The JDBC driver will do any necessary conversion from ASCII to the database char format.Note: This stream object can either be a standard Java stream object or your own subclass that implements the standard interface.
The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the
updateRow
orinsertRow
methods are called to update the database.- Specified by:
updateBlob
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columninputStream
- An object that contains the data to set the parameter value to.length
- the number of bytes in the parameter data.- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.6, HSQLDB 2.0
-
updateClob
Updates the designated column using the givenReader
object, which is the given number of characters long. When a very large UNICODE value is input to aLONGVARCHAR
parameter, it may be more practical to send it via ajava.io.Reader
object. The data will be read from the stream as needed until end-of-file is reached. The JDBC driver will do any necessary conversion from UNICODE to the database char format.Note: This stream object can either be a standard Java stream object or your own subclass that implements the standard interface.
The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the
updateRow
orinsertRow
methods are called to update the database.- Specified by:
updateClob
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...reader
- An object that contains the data to set the parameter value to.length
- the number of characters in the parameter data.- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.6, HSQLDB 2.0
-
updateClob
Updates the designated column using the givenReader
object, which is the given number of characters long. When a very large UNICODE value is input to aLONGVARCHAR
parameter, it may be more practical to send it via ajava.io.Reader
object. The data will be read from the stream as needed until end-of-file is reached. The JDBC driver will do any necessary conversion from UNICODE to the database char format.Note: This stream object can either be a standard Java stream object or your own subclass that implements the standard interface.
The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the
updateRow
orinsertRow
methods are called to update the database.- Specified by:
updateClob
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnreader
- An object that contains the data to set the parameter value to.length
- the number of characters in the parameter data.- Throws:
SQLException
- if a database access error occurs, the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.6, HSQLDB 2.0
-
updateNClob
Updates the designated column using the givenReader
object, which is the given number of characters long. When a very large UNICODE value is input to aLONGVARCHAR
parameter, it may be more practical to send it via ajava.io.Reader
object. The data will be read from the stream as needed until end-of-file is reached. The JDBC driver will do any necessary conversion from UNICODE to the database char format.Note: This stream object can either be a standard Java stream object or your own subclass that implements the standard interface.
The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the
updateRow
orinsertRow
methods are called to update the database.- Specified by:
updateNClob
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second 2, ...reader
- An object that contains the data to set the parameter value to.length
- the number of characters in the parameter data.- Throws:
SQLException
- if the driver does not support national character sets; if the driver can detect that a data conversion error could occur; this method is called on a closed result set, if a database access error occurs or the result set concurrency isCONCUR_READ_ONLY
SQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.6, HSQLDB 2.0
-
updateNClob
Updates the designated column using the givenReader
object, which is the given number of characters long. When a very large UNICODE value is input to aLONGVARCHAR
parameter, it may be more practical to send it via ajava.io.Reader
object. The data will be read from the stream as needed until end-of-file is reached. The JDBC driver will do any necessary conversion from UNICODE to the database char format.Note: This stream object can either be a standard Java stream object or your own subclass that implements the standard interface.
The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the
updateRow
orinsertRow
methods are called to update the database.- Specified by:
updateNClob
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnreader
- An object that contains the data to set the parameter value to.length
- the number of characters in the parameter data.- Throws:
SQLException
- if the driver does not support national character sets; if the driver can detect that a data conversion error could occur; this method is called on a closed result set; if a database access error occurs or the result set concurrency isCONCUR_READ_ONLY
SQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.6, HSQLDB 2.0
-
updateNCharacterStream
Updates the designated column with a character stream value. The data will be read from the stream as needed until end-of-stream is reached. The driver does the necessary conversion from Java character format to the national character set in the database. It is intended for use when updatingNCHAR
,NVARCHAR
andLONGNVARCHAR
columns.The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the
updateRow
orinsertRow
methods are called to update the database.Note: Consult your JDBC driver documentation to determine if it might be more efficient to use a version of
updateNCharacterStream
which takes a length parameter.- Specified by:
updateNCharacterStream
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...reader
- the new column value- Throws:
SQLException
- if the columnIndex is not valid; if a database access error occurs; the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- 1.6
-
updateNCharacterStream
Updates the designated column with a character stream value. The data will be read from the stream as needed until end-of-stream is reached. The driver does the necessary conversion from Java character format to the national character set in the database. It is intended for use when updatingNCHAR
,NVARCHAR
andLONGNVARCHAR
columns.The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the
updateRow
orinsertRow
methods are called to update the database.Note: Consult your JDBC driver documentation to determine if it might be more efficient to use a version of
updateNCharacterStream
which takes a length parameter.- Specified by:
updateNCharacterStream
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnreader
- thejava.io.Reader
object containing the new column value- Throws:
SQLException
- if the columnLabel is not valid; if a database access error occurs; the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- 1.6
-
updateAsciiStream
Updates the designated column with an ascii stream value. The data will be read from the stream as needed until end-of-stream is reached.The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the
updateRow
orinsertRow
methods are called to update the database.Note: Consult your JDBC driver documentation to determine if it might be more efficient to use a version of
updateAsciiStream
which takes a length parameter.- Specified by:
updateAsciiStream
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...x
- the new column value- Throws:
SQLException
- if the columnIndex is not valid; if a database access error occurs; the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- 1.6
-
updateBinaryStream
Updates the designated column with a binary stream value. The data will be read from the stream as needed until end-of-stream is reached.The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the
updateRow
orinsertRow
methods are called to update the database.Note: Consult your JDBC driver documentation to determine if it might be more efficient to use a version of
updateBinaryStream
which takes a length parameter.- Specified by:
updateBinaryStream
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...x
- the new column value- Throws:
SQLException
- if the columnIndex is not valid; if a database access error occurs; the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- 1.6
-
updateCharacterStream
Updates the designated column with a character stream value. The data will be read from the stream as needed until end-of-stream is reached.The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the
updateRow
orinsertRow
methods are called to update the database.Note: Consult your JDBC driver documentation to determine if it might be more efficient to use a version of
updateCharacterStream
which takes a length parameter.- Specified by:
updateCharacterStream
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...x
- the new column value- Throws:
SQLException
- if the columnIndex is not valid; if a database access error occurs; the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- 1.6
-
updateAsciiStream
Updates the designated column with an ascii stream value. The data will be read from the stream as needed until end-of-stream is reached.The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the
updateRow
orinsertRow
methods are called to update the database.Note: Consult your JDBC driver documentation to determine if it might be more efficient to use a version of
updateAsciiStream
which takes a length parameter.- Specified by:
updateAsciiStream
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnx
- the new column value- Throws:
SQLException
- if the columnLabel is not valid; if a database access error occurs; the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- 1.6
-
updateBinaryStream
Updates the designated column with a binary stream value. The data will be read from the stream as needed until end-of-stream is reached.The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the
updateRow
orinsertRow
methods are called to update the database.Note: Consult your JDBC driver documentation to determine if it might be more efficient to use a version of
updateBinaryStream
which takes a length parameter.- Specified by:
updateBinaryStream
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnx
- the new column value- Throws:
SQLException
- if the columnLabel is not valid; if a database access error occurs; the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- 1.6
-
updateCharacterStream
Updates the designated column with a character stream value. The data will be read from the stream as needed until end-of-stream is reached.The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the
updateRow
orinsertRow
methods are called to update the database.Note: Consult your JDBC driver documentation to determine if it might be more efficient to use a version of
updateCharacterStream
which takes a length parameter.- Specified by:
updateCharacterStream
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnreader
- thejava.io.Reader
object containing the new column value- Throws:
SQLException
- if the columnLabel is not valid; if a database access error occurs; the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- 1.6
-
updateBlob
Updates the designated column using the given input stream. The data will be read from the stream as needed until end-of-stream is reached.The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the
updateRow
orinsertRow
methods are called to update the database.Note: Consult your JDBC driver documentation to determine if it might be more efficient to use a version of
updateBlob
which takes a length parameter.- Specified by:
updateBlob
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...inputStream
- An object that contains the data to set the parameter value to.- Throws:
SQLException
- if the columnIndex is not valid; if a database access error occurs; the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- 1.6
-
updateBlob
Updates the designated column using the given input stream. The data will be read from the stream as needed until end-of-stream is reached.The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the
updateRow
orinsertRow
methods are called to update the database.Note: Consult your JDBC driver documentation to determine if it might be more efficient to use a version of
updateBlob
which takes a length parameter.- Specified by:
updateBlob
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columninputStream
- An object that contains the data to set the parameter value to.- Throws:
SQLException
- if the columnLabel is not valid; if a database access error occurs; the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- 1.6
-
updateClob
Updates the designated column using the givenReader
object. The data will be read from the stream as needed until end-of-stream is reached. The JDBC driver will do any necessary conversion from UNICODE to the database char format.The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the
updateRow
orinsertRow
methods are called to update the database.Note: Consult your JDBC driver documentation to determine if it might be more efficient to use a version of
updateClob
which takes a length parameter.- Specified by:
updateClob
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...reader
- An object that contains the data to set the parameter value to.- Throws:
SQLException
- if the columnIndex is not valid; if a database access error occurs; the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- 1.6
-
updateClob
Updates the designated column using the givenReader
object. The data will be read from the stream as needed until end-of-stream is reached. The JDBC driver will do any necessary conversion from UNICODE to the database char format.The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the
updateRow
orinsertRow
methods are called to update the database.Note: Consult your JDBC driver documentation to determine if it might be more efficient to use a version of
updateClob
which takes a length parameter.- Specified by:
updateClob
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnreader
- An object that contains the data to set the parameter value to.- Throws:
SQLException
- if the columnLabel is not valid; if a database access error occurs; the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- 1.6
-
updateNClob
Updates the designated column using the givenReader
The data will be read from the stream as needed until end-of-stream is reached. The JDBC driver will do any necessary conversion from UNICODE to the database char format.The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the
updateRow
orinsertRow
methods are called to update the database.Note: Consult your JDBC driver documentation to determine if it might be more efficient to use a version of
updateNClob
which takes a length parameter.- Specified by:
updateNClob
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second 2, ...reader
- An object that contains the data to set the parameter value to.- Throws:
SQLException
- if the columnIndex is not valid; if the driver does not support national character sets; if the driver can detect that a data conversion error could occur; this method is called on a closed result set, if a database access error occurs or the result set concurrency isCONCUR_READ_ONLY
SQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- 1.6
-
updateNClob
Updates the designated column using the givenReader
object. The data will be read from the stream as needed until end-of-stream is reached. The JDBC driver will do any necessary conversion from UNICODE to the database char format.The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the
updateRow
orinsertRow
methods are called to update the database.Note: Consult your JDBC driver documentation to determine if it might be more efficient to use a version of
updateNClob
which takes a length parameter.- Specified by:
updateNClob
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnreader
- An object that contains the data to set the parameter value to.- Throws:
SQLException
- if the columnLabel is not valid; if the driver does not support national character sets; if the driver can detect that a data conversion error could occur; this method is called on a closed result set; if a database access error occurs or the result set concurrency isCONCUR_READ_ONLY
SQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- 1.6
-
unwrap
Returns an object that implements the given interface to allow access to non-standard methods, or standard methods not exposed by the proxy. If the receiver implements the interface then the result is the receiver or a proxy for the receiver. If the receiver is a wrapper and the wrapped object implements the interface then the result is the wrapped object or a proxy for the wrapped object. Otherwise return the the result of callingunwrap
recursively on the wrapped object or a proxy for that result. If the receiver is not a wrapper and does not implement the interface, then anSQLException
is thrown.- Specified by:
unwrap
in interfaceWrapper
- Parameters:
iface
- A Class defining an interface that the result must implement.- Returns:
- an object that implements the interface. May be a proxy for the actual implementing object.
- Throws:
SQLException
- If no object found that implements the interface- Since:
- JDK 1.6, HSQLDB 2.0
-
isWrapperFor
Returns true if this either implements the interface argument or is directly or indirectly a wrapper for an object that does. Returns false otherwise. If this implements the interface then return true, else if this is a wrapper then return the result of recursively callingisWrapperFor
on the wrapped object. If this does not implement the interface and is not a wrapper, return false. This method should be implemented as a low-cost operation compared tounwrap
so that callers can use this method to avoid expensiveunwrap
calls that may fail. If this method returns true then callingunwrap
with the same argument should succeed.- Specified by:
isWrapperFor
in interfaceWrapper
- Parameters:
iface
- a Class defining an interface.- Returns:
- true if this implements the interface or directly or indirectly wraps an object that does.
- Throws:
SQLException
- if an error occurs while determining whether this is a wrapper for an object with the given interface.- Since:
- JDK 1.6, HSQLDB 2.0
-
getObject
Retrieves the value of the designated column in the current row of this
ResultSet
object and will convert from the SQL type of the column to the requested Java data type, if the conversion is supported. If the conversion is not supported or null is specified for the type, aSQLException
is thrown.At a minimum, an implementation must support the conversions defined in Appendix B, Table B-3 and conversion of appropriate user defined SQL types to a Java type which implements
SQLData
, orStruct
. Additional conversions may be supported and are vendor defined.- Specified by:
getObject
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...type
- Class representing the Java data type to convert the designated column to.- Returns:
- an instance of
type
holding the column value - Throws:
SQLException
- if conversion is not supported, type is null or another error occurs. The getCause() method of the exception may provide a more detailed exception, for example, if a conversion error occursSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.7 M11 2010/09/10 (b123), HSQLDB 2.0.1
-
getObject
Retrieves the value of the designated column in the current row of this
ResultSet
object and will convert from the SQL type of the column to the requested Java data type, if the conversion is supported. If the conversion is not supported or null is specified for the type, aSQLException
is thrown.At a minimum, an implementation must support the conversions defined in Appendix B, Table B-3 and conversion of appropriate user defined SQL types to a Java type which implements
SQLData
, orStruct
. Additional conversions may be supported and are vendor defined.- Specified by:
getObject
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columntype
- Class representing the Java data type to convert the designated column to.- Returns:
- an instance of
type
holding the column value - Throws:
SQLException
- if conversion is not supported, type is null or another error occurs. The getCause() method of the exception may provide a more detailed exception, for example, if a conversion error occursSQLFeatureNotSupportedException
- if the JDBC driver does not support this method- Since:
- JDK 1.7 M11 2010/09/10 (b123), HSQLDB 2.0.1
-
updateObject
public void updateObject(int columnIndex, Object x, SQLType targetSqlType, int scaleOrLength) throws SQLException Updates the designated column with anObject
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.If the second argument is an
InputStream
then the stream must contain the number of bytes specified by scaleOrLength. If the second argument is aReader
then the reader must contain the number of characters specified by scaleOrLength. If these conditions are not true the driver will generate aSQLException
when the statement is executed.The default implementation will throw
SQLFeatureNotSupportedException
- Specified by:
updateObject
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...x
- the new column valuetargetSqlType
- the SQL type to be sent to the databasescaleOrLength
- for an object ofjava.math.BigDecimal
, this is the number of digits after the decimal point. For Java Object typesInputStream
andReader
, this is the length of the data in the stream or reader. For all other types, this value will be ignored.- Throws:
SQLException
- if the columnIndex is not valid; if a database access error occurs; the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method; if the JDBC driver does not support the specified targetSqlType- Since:
- 1.8
- See Also:
-
updateObject
public void updateObject(String columnLabel, Object x, SQLType targetSqlType, int scaleOrLength) throws SQLException Updates the designated column with anObject
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.If the second argument is an
InputStream
then the stream must contain number of bytes specified by scaleOrLength. If the second argument is aReader
then the reader must contain the number of characters specified by scaleOrLength. If these conditions are not true the driver will generate aSQLException
when the statement is executed.The default implementation will throw
SQLFeatureNotSupportedException
- Specified by:
updateObject
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnx
- the new column valuetargetSqlType
- the SQL type to be sent to the databasescaleOrLength
- for an object ofjava.math.BigDecimal
, this is the number of digits after the decimal point. For Java Object typesInputStream
andReader
, this is the length of the data in the stream or reader. For all other types, this value will be ignored.- Throws:
SQLException
- if the columnLabel is not valid; if a database access error occurs; the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method; if the JDBC driver does not support the specified targetSqlType- Since:
- 1.8
- See Also:
-
updateObject
Updates the designated column with anObject
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.The default implementation will throw
SQLFeatureNotSupportedException
- Specified by:
updateObject
in interfaceResultSet
- Parameters:
columnIndex
- the first column is 1, the second is 2, ...x
- the new column valuetargetSqlType
- the SQL type to be sent to the database- Throws:
SQLException
- if the columnIndex is not valid; if a database access error occurs; the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method; if the JDBC driver does not support the specified targetSqlType- Since:
- 1.8
- See Also:
-
updateObject
Updates the designated column with anObject
value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead theupdateRow
orinsertRow
methods are called to update the database.The default implementation will throw
SQLFeatureNotSupportedException
- Specified by:
updateObject
in interfaceResultSet
- Parameters:
columnLabel
- the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the columnx
- the new column valuetargetSqlType
- the SQL type to be sent to the database- Throws:
SQLException
- if the columnLabel is not valid; if a database access error occurs; the result set concurrency isCONCUR_READ_ONLY
or this method is called on a closed result setSQLFeatureNotSupportedException
- if the JDBC driver does not support this method; if the JDBC driver does not support the specified targetSqlType- Since:
- 1.8
- See Also:
-
newJDBCResultSet
public static JDBCResultSet newJDBCResultSet(org.hsqldb.result.Result r, org.hsqldb.result.ResultMetaData metaData) Factory method returns a newJDBCResultSet
object for use with user defined functions that return a ResultSet object. Seeorg.hsqldb.jdbc.JDBCArrayBasic
for usage example.- Parameters:
r
- the internal result form that the newJDBCResultSet
representsmetaData
- the connection properties- Returns:
- ResultSet
-
newEmptyResultSet
-