java.lang.Objectorg.hsqldb.jdbcResultSet
All Implemented Interfaces:
ResultSet, ResultSetMetaData
java.sql.ResultSet
and
java.sql.ResultSetMetaData
interfaces.
In short:
The following is composed of three sections:
ResultSet
object is essentially--but not limited to
being--a table of data representing a database result set, which
is usually generated by executing a statement that queries the
database.ResultSetMetaData
object is one that can be used to
get information about the types and properties of the columns in a
ResultSet
object.
ResultSet
.ResultSetMetaData
.
From ResultSet
:
A table of data representing a database result set, which is usually generated by executing a statement that queries the database.
A ResultSet
object maintains a cursor pointing
to its current row of data. Initially the cursor is positioned
before the first row. The next
method moves the
cursor to the next row, and because it returns false
when there are no more rows in the ResultSet
object,
it can be used in a while
loop to iterate through
the result set.
A default ResultSet
object is not updatable and
has a cursor that moves forward only. Thus, 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. If column names are used, there is no way for the programmer to guarantee that they actually refer to the intended columns.
A set of updater methods were added to this interface in the JDBC 2.0 API (JavaTM 2 SDK, Standard Edition, version 1.2). The comments regarding parameters to the getter methods also apply to parameters to the updater methods.
The updater methods may be used in two ways:
ResultSet
object, the cursor can be moved backwards
and forwards, to an absolute position, or to a position
relative to the current row.
The following code fragment updates the NAME
column
in the fifth row of the ResultSet
object
rs
and then uses the method updateRow
to update the data source table from which rs
was
derived.
rs.absolute(5); // moves the cursor to the fifth row of rs rs.updateString("NAME", "AINSWORTH"); // updates the //NAME
column of row 5 to beAINSWORTH
rs.updateRow(); // updates the row in the data source
ResultSet
object has a special row associated with
it that serves as a staging area for building a row to be inserted.
The following code fragment moves the cursor to the insert row, builds
a three-column row, and inserts it into rs
and into
the data source table using the method insertRow
.
rs.moveToInsertRow(); // moves cursor to the insert row rs.updateString(1, "AINSWORTH"); // updates the // first column of the insert row to beAINSWORTH
rs.updateInt(2,35); // updates the second column to be35
rs.updateBoolean(3, true); // updates the third row 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 ResulSetMetaData
object returned by the ResultSet.getMetaData
method.
From ResultSetMetaData
:
An object that can be used to get information about the types
and properties of the columns in a ResultSet
object.
The following code fragment creates the ResultSet
object rs, creates the ResultSetMetaData
object rsmd,
and uses rsmd
to find out how many columns rs has and whether the first column in rs
can be used in a WHERE
clause.
ResultSet rs = stmt.executeQuery("SELECT a, b, c FROM TABLE2"); ResultSetMetaData rsmd = rs.getMetaData(); int numberOfColumns = rsmd.getColumnCount(); boolean b = rsmd.isSearchable(1);HSQLDB-Specific Information:
As stated above, jdbcResultSet
implements both the
ResultSet
and ResultSetMetaData
interfaces.
However, to gain access to the interface methods of
ResultSetMetaData
in a driver independent way, the
traditional call to the getMetaData method should
be used, rather than casting objects known to be of type
jdbcResultSet
to type ResultSetMetaData
.
A ResultSet
object generated by HSQLDB is, as is standard
JDBC behavior, by default of ResultSet.TYPE_FORWARD_ONLY
and does not allow the use of absolute and relative positioning
methods. However, starting with 1.7.0, if a statement is created
with:
Statement stmt 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 persists, 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.
Up to and including HSQLDB 1.7.0, there is no support for any of
the methods introduced in JDBC 2 relating to updateable result sets.
These methods include all updateXXX methods, as well as the
#insertRow , #updateRow , #deleteRow ,
#moveToInsertRow (and so on) methods. A call to any such
unsupported method will simply result in throwing a
SQLException
which states that the function is not
supported. It is not anticipated that HSQLDB-native support for
updateable ResultSet
objects will be introduced in the
HSQLDB 1.7.x series. Such features may be part of the
HSQLDB 2.x series, but no decisions have been made at this point.
JRE 1.1.x Notes:
In general, JDBC 2 support requires Java 1.2 and above, and JDBC 3 requires Java 1.4 and above. In HSQLDB, support for methods introduced in different versions of JDBC depends on the JDK version used for compiling and building HSQLDB.
Since 1.7.0, it is possible to build the product so that
all JDBC 2 methods can be called while executing under the version 1.1.x
Java Runtime EnvironmentTM.
However, some of these method calls require int
values that
are defined only in the JDBC 2 or greater version of the
ResultSet
interface. For this reason, when the
product is compiled under JDK 1.1.x, these values are defined in
here, in this class.
In a JRE 1.1.x environment, calling JDBC 2 methods that take or return the
JDBC2-only ResultSet
values can be achieved by referring
to them in parameter specifications and return value comparisons,
respectively, as follows:
jdbcResultSet.FETCH_FORWARD
jdbcResultSet.TYPE_FORWARD_ONLY
jdbcResultSet.TYPE_SCROLL_INSENSITIVE
jdbcResultSet.CONCUR_READ_ONLY
However, please note that code written in such a manner will not be
compatible for use with other JDBC 2 drivers, since they expect and use
ResultSet
, rather than jdbcResultSet
. Also
note, this feature is offered solely as a convenience to developers
who must work under JDK 1.1.x due to operating constraints, yet wish to
use some of the more advanced features available under the JDBC 2
specification.
ResultSetMetaData Implementation Notes:
HSQLDB supports a subset of ResultSetMetaData
interface.
The JDBC specification for ResultSetMetaData
is in part very
vague. Several methods are exclusively for columns that are database
table columns. There is a complete lack of specification on how these
methods are supposed to distinguish between updatable and non-updatable
ResultSet
objects or between columns that are database
table columns and those that are results of calculations or functions.
This causes potential incompatibility between interpretations of the
specifications in different JDBC drivers.
As such, DatabaseMetadata
reporting will be enhanced
in future 1.7.x and greater versions, but enhancements to reporting
ResultSetMetaData
have to be considered carefully as they
impose a performance penalty on all ResultSet
objects
returned from HSQLDB, whether or not the ResultSetMetaData
methods are used.
(fredt@users)
(boucherb@users)
ResultSetMetaData
Field Summary | ||
---|---|---|
Statement | sqlStatement | The Statement that generated this result. |
int | rsType | The direction of this result. |
Constructor: |
---|
jdbcResultSet object using the specified
org.hsqldb.Result .
|
Methods from java.lang.Object: |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Method from org.hsqldb.jdbcResultSet Detail: |
---|
ResultSet 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
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
|
ResultSet object, just after the last row. This
method has no effect if the result set contains no rows.
|
ResultSet object, just before the
first row. This method has no effect if the result set contains
no rows.
|
ResultSet object.
This method may be called after calling an
updater method(s) and before calling
the method updateRow to roll back
the updates made to a row. If no updates have been made or
updateRow has already been called, this method has no
effect.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
ResultSet object.
After this method is called, the method getWarnings
returns null until a new warning is
reported for this ResultSet object.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not produce
|
ResultSet object's database and
JDBC resources immediately instead of waiting for
this to happen when it is automatically closed.
Note: A
|
ResultSet object
and from the underlying database. This method cannot be called when
the cursor is on the insert row.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
ResultSet column name to its
ResultSet column index.
|
ResultSet object.
|
ResultSet object as an Array object
in the Java programming language.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support this feature.
Calling this method always throws a
|
ResultSet object as an Array object
in the Java programming language.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support this feature.
Calling this method always throws a
|
ResultSet object as
a stream of ASCII characters. The value can then be read in chunks
from the stream. This method is particularly
suitable for retrieving large Note: All the data in the returned stream must be
read prior to getting the value of any other column. The next
call to a getter method implicitly closes the stream. Also, a
stream may return
HSQLDB-Specific Information:
The limitation noted above does not apply to HSQLDB.
Up to and including 1.6.1, getAsciiStream was identical to
getUnicodeStream and both simply returned a byte stream
constructed from the raw getBytes
representation.
Starting with 1.7.0, this has been updated to comply with the
java.sql specification.
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
HSQLDB SQL
|
ResultSet object as a stream of
ASCII characters. The value can then be read in chunks from the
stream. This method is particularly
suitable for retrieving large LONGVARCHAR values.
The JDBC driver will
do any necessary conversion from the database format into ASCII.
Note: All the data in the returned stream must be
read prior to getting the value of any other column. The next
call to a getter method implicitly closes the stream. Also, a
stream may return
|
ResultSet object as a
java.math.BigDecimal with full precision.
|
ResultSet object as a
java.math.BigDecimal with full precision.
|
Deprecated!
ResultSet object as
a java.sql.BigDecimal in the Java programming language.
HSQLDB-Specific Information:
Beginning with 1.7.0, HSQLDB converts the result and sets the scale
with BigDecimal.ROUND_HALF_DOWN
|
Deprecated!
ResultSet object as a
java.math.BigDecimal in the Java programming language.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB ignores the scale parameter.
|
ResultSet object as a binary stream of
uninterpreted bytes. The value can then be read in chunks from the
stream. This method is particularly
suitable for retrieving large LONGVARBINARY values.
Note: All the data in the returned stream must be
read prior to getting the value of any other column. The next
call to a getter method implicitly closes the stream. Also, a
stream may return
|
ResultSet object as a stream of uninterpreted
byte s.
The value can then be read in chunks from the
stream. This method is particularly
suitable for retrieving large LONGVARBINARY
values.
Note: All the data in the returned stream must be
read prior to getting the value of any other column. The next
call to a getter method implicitly closes the stream. Also, a
stream may return
|
ResultSet object as a Blob object
in the Java programming language.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support this feature.
Calling this method always throws a
|
ResultSet object as a Blob object
in the Java programming language.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support this feature.
Calling this method always throws a
|
ResultSet object as
a boolean in the Java programming language.
|
ResultSet object as
a boolean in the Java programming language.
|
ResultSet object as
a byte in the Java programming language.
|
ResultSet object as
a byte in the Java programming language.
|
ResultSet object as
a byte array in the Java programming language.
The bytes represent the raw values returned by the driver.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB returns correct values for columns
of type
|
ResultSet object as
a byte array in the Java programming language.
The bytes represent the raw values returned by the driver.
|
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDD does not support catalogs.
This method always returns an empty
See discussion at: #getMetaData
|
ResultSet object as a
java.io.Reader object.
HSQLDB-Specific Information:
This method is new to HSQLDB 1.7.0. Previous versions did not
implement this, thowing a
|
ResultSet object as a
java.io.Reader object.
HSQLDB-Specific Information:
This method is new to HSQLDB 1.7.0. Previous versions did not
implement this, thowing a
|
ResultSet object as a Clob object
in the Java programming language.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support this feature.
Calling this method always throws a
|
ResultSet object as a Clob object
in the Java programming language.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support this feature.
Calling this method always throws a
|
ResultSet.getObject
is called to retrieve a value
from the column. ResultSet.getObject may return a
subclass of the class returned by this method.
HSQLDB-Specific Information:
HSQLDB 1.7.1 does not support this feature.
Calling this method always throws a
See discussion at: #getMetaData
|
ResultSet
object.
HSQLDB-Specific Information:
See discussion at: #getMetaData
|
HSQLDB-Specific Information:
Up to and including HSQLDB 1.7.0, this method always returns
0 (no limit/unknown).
See discussion at: #getMetaData
|
HSQLDB-Specific Information:
In HSQLDB a
See discussion at: #getMetaData
|
HSQLDB-Specific Information:
In HSQLDB a ResultSet column name is determined in the following
order of prcedence:
If the
See discussion at: #getMetaData
|
HSQLDB-Specific Information:
This reports the SQL type of the column. HSQLDB can return Objects in
any Java integral type wider than
See discussion at: #getMetaData
|
HSQLDB-Specific Information:
See above at: (@link #getColumnType)
See discussion at: #getMetaData
|
ResultSet object.
The concurrency used is determined by the
Statement object that created the result set.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB supports only and thus always
returns
|
ResultSet object.
In SQL, a result table is retrieved through a cursor that is
named. The current row of a result set can be updated or deleted
using a positioned update/delete statement that references the
cursor name. To insure that the cursor has the proper isolation
level to support update, the cursor's The JDBC API supports this SQL feature by providing the name of the
SQL cursor used by a Note: If positioned update is not supported, a
HSQLDB-Specific Information:
HSQLDB 1.7.1 does not support this feature.
Calling this method always throws a
|
ResultSet object as a
java.sql.Date object in the Java programming language.
|
ResultSet object as a
java.sql.Date object in the Java programming language.
|
ResultSet object as a
java.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.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support this feature.
Calling this method always throws a
|
ResultSet object as a java.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.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support this feature.
Calling this method always throws a
|
ResultSet object as
a double in the Java programming language.
|
ResultSet object as
a double in the Java programming language.
|
ResultSet object.
HSQLDB-Specific Information:
HSQLDB 1.7.1 returns result sets as a whole, so the value returned
by this method has no real meaning.
Calling this method always returns
|
ResultSet object.
HSQLDB-Specific Information:
As HSQLDB builds and returns the whole result set as a whole, the
value returned (1) has no significance.
|
ResultSet object as
a float in the Java programming language.
|
ResultSet object as
a float in the Java programming language.
|
ResultSet object as
an int in the Java programming language.
|
ResultSet object as
an int in the Java programming language.
|
ResultSet object as
a long in the Java programming language.
|
ResultSet object as
a long in the Java programming language.
|
ResultSet object's columns.
HSQLDB-Specific Information:
Example:
The following code fragment creates a
Warning:
Up to and including 1.7.1, HSQLDB does not generate accurate
|
ResultSet object as
an Object in the Java programming language.
This method will return the value of the given column as a
Java object. The type of the Java object will be the default
Java object type corresponding to the column's SQL type,
following the mapping for built-in types specified in the JDBC
specification. If the value is an SQL This method may also be used to read datatabase-specific
abstract data types.
In the JDBC 2.0 API, the behavior of method
|
ResultSet object as
an Object in the Java programming language.
This method will return the value of the given column as a
Java object. The type of the Java object will be the default
Java object type corresponding to the column's SQL type,
following the mapping for built-in types specified in the JDBC
specification. If the value is an SQL This method may also be used to read datatabase-specific abstract data types.
In the JDBC 2.0 API, the behavior of the method
|
ResultSet object as an Object
in the Java programming language.
If the value is an SQL NULL ,
the driver returns a Java null .
This method uses the given Map object
for the custom mapping of the
SQL structured or distinct type that is being retrieved.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support this feature.
Calling this method always throws a
|
ResultSet object as an Object
in the Java programming language.
If the value is an SQL NULL ,
the driver returns a Java null .
This method uses the specified Map object for
custom mapping if appropriate.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support this feature.
Calling this method always throws a
|
HSQLDB-Specific Information:
Up to and including HSQLDB 1.7.0, this method always returns
0 (unknown/no limit).
See discussion at: #getMetaData
|
ResultSet object as a Ref object
in the Java programming language.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support this feature.
Calling this method always throws a
|
ResultSet object as a Ref object
in the Java programming language.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support this feature.
Calling this method always throws a
|
|
HSQLDB-Specific Information:
Up to and including HSQLDB 1.7.0, this method always returns
0 (unknown).
See discussion at: #getMetaData
|
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDD does not support schema names.
This method always returns an empty
See discussion at: #getMetaData
|
ResultSet object as
a short in the Java programming language.
|
ResultSet object as
a short in the Java programming language.
|
Statement object that produced this
ResultSet object.
If the result set was generated some other way, such as by a
DatabaseMetaData method, this method returns
null .
|
ResultSet object as
a String in the Java programming language.
|
ResultSet object as
a String in the Java programming language.
|
HSQLDB-Specific Information:
See discussion at: #getMetaData
|
ResultSet object as a java.sql.Time
object in the Java programming language.
|
ResultSet object as a java.sql.Time
object in the Java programming language.
|
ResultSet object as a java.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:
Up to and including 1.7.1, HSQLDB does not support this feature.
Calling this method always throws a
|
ResultSet object as
a java.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:
Up to and including 1.7.1, HSQLDB does not support this feature.
Calling this method always throws a
|
ResultSet object as
a java.sql.Timestamp object in the Java programming
language.
|
ResultSet object as
a java.sql.Timestamp object.
|
ResultSet object as a
java.sql.Timestamp object in the Java programming
anguage.
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:
Up to and including 1.7.1, HSQLDB does not support this feature.
Calling this method always throws a
|
ResultSet object as a
java.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:
Up to and including 1.7.1, HSQLDB does not support this feature.
Calling this method always throws a
|
ResultSet object.
The type is determined by the Statement object
that created the result set.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support and thus
never returns
|
ResultSet object as a java.net.URL
object in the Java programming language.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support this feature.
Calling this method always throws a
|
ResultSet object as a java.net.URL
object in the Java programming language.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support this feature.
Calling this method always throws a
|
Deprecated! use - getCharacterStream in place of
getUnicodeStream
ResultSet object as
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 large LONGVARCHAR 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
HSQLDB-Specific Information:
The limitation noted above does not apply to HSQLDB.
Up to and including 1.6.1, getUnicodeStream (and getAsciiStream)
both simply returned a byte stream constructed from the
raw getBytes representation.
Starting with 1.7.0, this has been corrected to comply with the
java.sql specification.
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
|
Deprecated! use - getCharacterStream instead
ResultSet 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 large LONGVARCHAR 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
|
|
ResultSet object.
Subsequent warnings on this ResultSet object
will be chained to the SQLWarning object that
this method returns.
The warning chain is automatically cleared each time a new
row is read. This method may not be called on a
Note: This warning chain only covers warnings caused
by
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not produce
|
ResultSet object and into the database.
The cursor must be on the insert row when this method is called.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
ResultSet object.
|
HSQLDB-Specific Information:
HSQLDB 1.7.1 does not support this feature.
The return value from this method depends on whether the
See discussion at: #getMetaData
|
ResultSet object.
|
HSQLDB-Specific Information:
HSQLDB 1.7.1 does not support this feature.
The return value from this method depends on whether the
See discussion at: #getMetaData
|
HSQLDB-Specific Information:
Up to and including HSQLDB 1.7.0, this method always returns false.
See discussion at: #getMetaData
|
HSQLDB-Specific Information:
HSQLDB 1.7.1 does not support this feature.
The return value from this method depends on whether the
See discussion at: #getMetaData
|
ResultSet object.
|
ResultSet object.
Note: Calling the method isLast 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.
HSQLDB-Specific Information:
Up to and including HSQLDB 1.7.0, this method is not
terribly expensive, since the entire result is fetched
internally before this object is returned to a caller.
|
HSQLDB-Specific Information:
The return value from this method depends on whether the
See discussion at: #getMetaData
|
HSQLDB-Specific Information:
HSQLDB 1.7.1 does not support this feature.
The return value from this method depends on whether the
See discussion at: #getMetaData
|
Not all results have row data. Some are ERROR results (an execption occured while executing my statement), and some are UPDATE results, in which case updates occured to rows on the database, but no rows were actually returned. |
HSQLDB-Specific Information:
HSQLDB 1.7.1 does not support this feature.
The return value from this method depends on whether the
See discussion at: #getMetaData
|
HSQLDB-Specific Information:
HSQLDB 1.7.1 adds support for this feature.
|
HSQLDB-Specific Information:
HSQLDB 1.7.1 does not support this feature.
The return value from this method depends on whether the
See discussion at: #getMetaData
|
ResultSet object.
|
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support
#moveToInsertRow() so the current row is never strayed from.
Consequentially, this request is simply ignored.
|
insertRow 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 calling insertRow .
An updater method must be called before a
getter method can be called on a column value.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
ResultSet cursor is initially positioned
before the first row; the first call to the method
next makes the first row the current row; the
second call makes the second row the current row, and so on.
If an input stream is open for the current row, a call
to the method
|
ResultSet object.
|
The All values are refetched subject to the transaction isolation
level and cursor sensitivity. If
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
relative(0) is valid, but does
not change the cursor position.
Note: Calling the method
|
ResultSet object can detect deletions.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
This method always returns false.
|
ResultSet object can detect visible inserts.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
This method always returns false.
|
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
This method always returns false.
|
ResultSet object will be processed.
The initial value is determined by the
Statement object
that produced this ResultSet object.
The fetch direction may be changed at any time.
HSQLDB-Specific Information:
HSQLDB 1.7.1 builds and returns result sets as a whole, so this
method does nothing, apart from the case mandated by the JDBC standard
below where
an SQLException is thrown with result sets of TYPE_FORWARD_ONLY and
fetch directions other than FETCH_FORWARD.
|
ResultSet 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 the
Statement object
that created the result set. The fetch size may be changed at any
time.
HSQLDB-Specific Information:
This method does nothing in HSQLDB as the result set is
built and returned completely as a whole.
|
java.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 the updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results or this data type.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
java.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 the updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results or this data type.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
java.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 the updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
java.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 the updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
java.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 the updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results or this data type.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
java.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 the updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results or this data type.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
boolean 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 the updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
boolean 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 the updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
byte 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 the updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
byte 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 the updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
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 the updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
java.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 the updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results or this data type.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
java.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 the updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results or this data type.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
java.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 the updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
java.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 the updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
double 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 the updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
double 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 the updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
float 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 the updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
float 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 the updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
int 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 the updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
int 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 the updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
long 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 the updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
long 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 the updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
updateRow
or insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
null 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 the updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
Object 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 the updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
Object 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 the updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
Object 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 the updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
Object 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 the updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
java.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 the updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results or this data type.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
java.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 the updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results or this data type.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
ResultSet object.
This method cannot be called when the cursor is on the insert row.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
short 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 the updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
short 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 the updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
String 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 the updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
String 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 the updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
java.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 the updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
java.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 the updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
java.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 the updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
java.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 the updateRow or
insertRow methods are called to update the database.
HSQLDB-Specific Information:
Up to and including 1.7.1, HSQLDB does not support updateable
results.
Calling this method always throws a SQLException, stating that
the function is not supported.
|
NULL .
Note that you must first call one of the getter methods
on a column to try to read its value and then call
the method wasNull to see if the value read was
SQL NULL .
|