org.firebirdsql.jdbc

## Class FBResultSet

- java.lang.Object
- - org.firebirdsql.jdbc.FBResultSet

All Implemented Interfaces:
  java.lang.AutoCloseable, java.sql.ResultSet, java.sql.Wrapper, FBObjectListener.FetcherListener, FirebirdResultSet

    public class FBResultSet
    extends java.lang.Object
    implements java.sql.ResultSet, FirebirdResultSet, FBObjectListener.FetcherListener

Implementation of `ResultSet`.

Author:
  David Jencks, Roman Rokytskyy, Mark Rotteveel

### Field Summary

Fields
`protected FBConnection` `connection`
`protected GDSHelper` `gdsHelper`
`protected RowValue` `row`
`protected RowDescriptor` `rowDescriptor`

### Fields 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

Constructors
Constructor and Description
`FBResultSet(FBConnection connection, FBStatement fbStatement, FbStatement stmt, FBObjectListener.ResultSetListener listener, boolean metaDataQuery, int rsType, int rsConcurrency, int rsHoldability, boolean cached)` Creates a new `FBResultSet` instance.
`FBResultSet(RowDescriptor rowDescriptor, FBConnection connection, java.util.List<RowValue> rows, boolean retrieveBlobs)` Creates a FBResultSet with the columns specified by `rowDescriptor` and the data in `rows`.
`FBResultSet(RowDescriptor rowDescriptor, java.util.List<RowValue> rows)` Creates a FBResultSet with the columns specified by `rowDescriptor` and the data in `rows`.
`FBResultSet(RowDescriptor rowDescriptor, java.util.List<RowValue> rows, FBObjectListener.ResultSetListener listener)` Creates a FBResultSet with the columns specified by `rowDescriptor` and the data in `rows`.

### Method Summary

All Methods Instance Methods Concrete Methods Deprecated Methods
`boolean` `absolute(int row)`
`protected void` `addWarning(java.sql.SQLWarning warning)`
`void` `afterLast()`
`void` `allRowsFetched(org.firebirdsql.jdbc.FBFetcher fetcher)` Notify listener that underlying fetcher fetched all rows.
`void` `beforeFirst()`
`void` `cancelRowUpdates()`
`protected void` `checkCursorMove()` Check if statement is open and prepare statement for cursor move.
`protected void` `checkOpen()` Check if ResultSet is open.
`protected void` `checkScrollable()` Checks if the result set is scrollable
`void` `clearWarnings()`
`void` `close()`
`protected void` `closeFields()` Close the fields if they were open (applies mainly to the stream fields).
`void` `deleteRow()`
`void` `fetcherClosed(org.firebirdsql.jdbc.FBFetcher fetcher)` Notify listener that underlying fetcher is closed.
`int` `findColumn(java.lang.String columnName)`
`boolean` `first()`
`java.sql.Array` `getArray(int i)`
`java.sql.Array` `getArray(java.lang.String columnName)`
`java.io.InputStream` `getAsciiStream(int columnIndex)`
`java.io.InputStream` `getAsciiStream(java.lang.String columnName)`
`java.math.BigDecimal` `getBigDecimal(int columnIndex)`
`java.math.BigDecimal` `getBigDecimal(int columnIndex, int scale)` Deprecated.
`java.math.BigDecimal` `getBigDecimal(java.lang.String columnName)`
`java.math.BigDecimal` `getBigDecimal(java.lang.String columnName, int scale)` Deprecated.
`java.io.InputStream` `getBinaryStream(int columnIndex)`
`java.io.InputStream` `getBinaryStream(java.lang.String columnName)`
`java.sql.Blob` `getBlob(int columnIndex)`
`java.sql.Blob` `getBlob(java.lang.String columnName)`
`boolean` `getBoolean(int columnIndex)`
`boolean` `getBoolean(java.lang.String columnName)`
`byte` `getByte(int columnIndex)`
`byte` `getByte(java.lang.String columnName)`
`byte[]` `getBytes(int columnIndex)`
`byte[]` `getBytes(java.lang.String columnName)`
`java.io.Reader` `getCharacterStream(int columnIndex)`
`java.io.Reader` `getCharacterStream(java.lang.String columnName)`
`java.sql.Clob` `getClob(int i)`
`java.sql.Clob` `getClob(java.lang.String columnName)`
`int` `getConcurrency()`
`java.lang.String` `getCursorName()`
`java.sql.Date` `getDate(int columnIndex)`
`java.sql.Date` `getDate(int columnIndex, java.util.Calendar cal)`
`java.sql.Date` `getDate(java.lang.String columnName)`
`java.sql.Date` `getDate(java.lang.String columnName, java.util.Calendar cal)`
`double` `getDouble(int columnIndex)`
`double` `getDouble(java.lang.String columnName)`
`java.lang.String` `getExecutionPlan()` Get execution plan for the specified result set.
`java.lang.String` `getExplainedExecutionPlan()` Get detailed execution plan for the specified result set.
`int` `getFetchDirection()`
`int` `getFetchSize()`
`FBField` `getField(int columnIndex)` Get the `FBField` object at the given column index
`FBField` `getField(int columnIndex, boolean checkRowPosition)` Factory method for the field access objects
`FBField` `getField(java.lang.String columnName)` Get a `FBField` by name.
`float` `getFloat(int columnIndex)`
`float` `getFloat(java.lang.String columnName)`
`int` `getHoldability()`
`int` `getInt(int columnIndex)`
`int` `getInt(java.lang.String columnName)`
`long` `getLong(int columnIndex)`
`long` `getLong(java.lang.String columnName)`
`java.sql.ResultSetMetaData` `getMetaData()`
`java.io.Reader` `getNCharacterStream(int columnIndex)`
`java.io.Reader` `getNCharacterStream(java.lang.String columnLabel)`
`java.sql.NClob` `getNClob(int columnIndex)`
`java.sql.NClob` `getNClob(java.lang.String columnLabel)`
`java.lang.String` `getNString(int columnIndex)`
`java.lang.String` `getNString(java.lang.String columnLabel)`
`java.lang.Object` `getObject(int columnIndex)`
`<T> T` `getObject(int columnIndex, java.lang.Class<T> type)`
`java.lang.Object` `getObject(int i, java.util.Map<java.lang.String,java.lang.Class<?>> map)`
`java.lang.Object` `getObject(java.lang.String columnName)`
`<T> T` `getObject(java.lang.String columnLabel, java.lang.Class<T> type)`
`java.lang.Object` `getObject(java.lang.String columnName, java.util.Map<java.lang.String,java.lang.Class<?>> map)`
`java.sql.Ref` `getRef(int i)`
`java.sql.Ref` `getRef(java.lang.String columnName)`
`int` `getRow()`
`java.sql.RowId` `getRowId(int columnIndex)`
`java.sql.RowId` `getRowId(java.lang.String columnLabel)`
`short` `getShort(int columnIndex)`
`short` `getShort(java.lang.String columnName)`
`java.sql.SQLXML` `getSQLXML(int columnIndex)`
`java.sql.SQLXML` `getSQLXML(java.lang.String columnLabel)`
`java.sql.Statement` `getStatement()`
`java.lang.String` `getString(int columnIndex)`
`java.lang.String` `getString(java.lang.String columnName)`
`java.sql.Time` `getTime(int columnIndex)`
`java.sql.Time` `getTime(int columnIndex, java.util.Calendar cal)`
`java.sql.Time` `getTime(java.lang.String columnName)`
`java.sql.Time` `getTime(java.lang.String columnName, java.util.Calendar cal)`
`java.sql.Timestamp` `getTimestamp(int columnIndex)`
`java.sql.Timestamp` `getTimestamp(int columnIndex, java.util.Calendar cal)`
`java.sql.Timestamp` `getTimestamp(java.lang.String columnName)`
`java.sql.Timestamp` `getTimestamp(java.lang.String columnName, java.util.Calendar cal)`
`int` `getType()`
`java.io.InputStream` `getUnicodeStream(int columnIndex)` Deprecated.
`java.io.InputStream` `getUnicodeStream(java.lang.String columnName)` Deprecated.
`java.net.URL` `getURL(int param1)`
`java.net.URL` `getURL(java.lang.String param1)`
`java.sql.SQLWarning` `getWarnings()`
`void` `insertRow()`
`boolean` `isAfterLast()`
`boolean` `isBeforeFirst()`
`boolean` `isClosed()`
`boolean` `isFirst()`
`boolean` `isLast()`
`boolean` `isWrapperFor(java.lang.Class<?> iface)`
`boolean` `last()`
`void` `moveToCurrentRow()`
`void` `moveToInsertRow()`
`boolean` `next()`
`boolean` `previous()`
`void` `refreshRow()`
`boolean` `relative(int rows)`
`void` `rowChanged(org.firebirdsql.jdbc.FBFetcher fetcher, RowValue newRow)` Notify listener that underlying row was changed.
`boolean` `rowDeleted()`
`boolean` `rowInserted()`
`boolean` `rowUpdated()`
`void` `setFetchDirection(int direction)`
`void` `setFetchSize(int rows)`
`<T> T` `unwrap(java.lang.Class<T> iface)`
`void` `updateArray(int param1, java.sql.Array param2)`
`void` `updateArray(java.lang.String param1, java.sql.Array param2)`
`void` `updateAsciiStream(int columnIndex, java.io.InputStream x)`
`void` `updateAsciiStream(int columnIndex, java.io.InputStream x, int length)`
`void` `updateAsciiStream(int columnIndex, java.io.InputStream x, long length)`
`void` `updateAsciiStream(java.lang.String columnLabel, java.io.InputStream x)`
`void` `updateAsciiStream(java.lang.String columnName, java.io.InputStream x, int length)`
`void` `updateAsciiStream(java.lang.String columnLabel, java.io.InputStream x, long length)`
`void` `updateBigDecimal(int columnIndex, java.math.BigDecimal x)`
`void` `updateBigDecimal(java.lang.String columnName, java.math.BigDecimal x)`
`void` `updateBinaryStream(int columnIndex, java.io.InputStream x)`
`void` `updateBinaryStream(int columnIndex, java.io.InputStream x, int length)`
`void` `updateBinaryStream(int columnIndex, java.io.InputStream x, long length)`
`void` `updateBinaryStream(java.lang.String columnLabel, java.io.InputStream x)`
`void` `updateBinaryStream(java.lang.String columnName, java.io.InputStream x, int length)`
`void` `updateBinaryStream(java.lang.String columnLabel, java.io.InputStream x, long length)`
`void` `updateBlob(int columnIndex, java.sql.Blob blob)`
`void` `updateBlob(int columnIndex, java.io.InputStream inputStream)`
`void` `updateBlob(int columnIndex, java.io.InputStream inputStream, long length)`
`void` `updateBlob(java.lang.String columnLabel, java.sql.Blob blob)`
`void` `updateBlob(java.lang.String columnLabel, java.io.InputStream inputStream)`
`void` `updateBlob(java.lang.String columnLabel, java.io.InputStream inputStream, long length)`
`void` `updateBoolean(int columnIndex, boolean x)`
`void` `updateBoolean(java.lang.String columnName, boolean x)`
`void` `updateByte(int columnIndex, byte x)`
`void` `updateByte(java.lang.String columnName, byte x)`
`void` `updateBytes(int columnIndex, byte[] x)`
`void` `updateBytes(java.lang.String columnName, byte[] x)`
`void` `updateCharacterStream(int columnIndex, java.io.Reader x)`
`void` `updateCharacterStream(int columnIndex, java.io.Reader x, int length)`
`void` `updateCharacterStream(int columnIndex, java.io.Reader x, long length)`
`void` `updateCharacterStream(java.lang.String columnLabel, java.io.Reader reader)`
`void` `updateCharacterStream(java.lang.String columnName, java.io.Reader reader, int length)`
`void` `updateCharacterStream(java.lang.String columnLabel, java.io.Reader reader, long length)`
`void` `updateClob(int columnIndex, java.sql.Clob clob)`
`void` `updateClob(int columnIndex, java.io.Reader reader)`
`void` `updateClob(int columnIndex, java.io.Reader reader, long length)`
`void` `updateClob(java.lang.String columnLabel, java.sql.Clob clob)`
`void` `updateClob(java.lang.String columnLabel, java.io.Reader reader)`
`void` `updateClob(java.lang.String columnLabel, java.io.Reader reader, long length)`
`void` `updateDate(int columnIndex, java.sql.Date x)`
`void` `updateDate(java.lang.String columnName, java.sql.Date x)`
`void` `updateDouble(int columnIndex, double x)`
`void` `updateDouble(java.lang.String columnName, double x)`
`void` `updateFloat(int columnIndex, float x)`
`void` `updateFloat(java.lang.String columnName, float x)`
`void` `updateInt(int columnIndex, int x)`
`void` `updateInt(java.lang.String columnName, int x)`
`void` `updateLong(int columnIndex, long x)`
`void` `updateLong(java.lang.String columnName, long x)`
`void` `updateNCharacterStream(int columnIndex, java.io.Reader x)`
`void` `updateNCharacterStream(int columnIndex, java.io.Reader x, long length)`
`void` `updateNCharacterStream(java.lang.String columnLabel, java.io.Reader reader)`
`void` `updateNCharacterStream(java.lang.String columnLabel, java.io.Reader reader, long length)`
`void` `updateNClob(int columnIndex, java.sql.NClob clob)`
`void` `updateNClob(int columnIndex, java.io.Reader reader)`
`void` `updateNClob(int columnIndex, java.io.Reader reader, long length)`
`void` `updateNClob(java.lang.String columnLabel, java.sql.NClob clob)`
`void` `updateNClob(java.lang.String columnLabel, java.io.Reader reader)`
`void` `updateNClob(java.lang.String columnLabel, java.io.Reader reader, long length)`
`void` `updateNString(int columnIndex, java.lang.String string)`
`void` `updateNString(java.lang.String columnLabel, java.lang.String string)`
`void` `updateNull(int columnIndex)`
`void` `updateNull(java.lang.String columnName)`
`void` `updateObject(int columnIndex, java.lang.Object x)`
`void` `updateObject(int columnIndex, java.lang.Object x, int scale)`
`void` `updateObject(int columnIndex, java.lang.Object x, java.sql.SQLType targetSqlType)`
`void` `updateObject(int columnIndex, java.lang.Object x, java.sql.SQLType targetSqlType, int scaleOrLength)`
`void` `updateObject(java.lang.String columnName, java.lang.Object x)`
`void` `updateObject(java.lang.String columnName, java.lang.Object x, int scale)`
`void` `updateObject(java.lang.String columnLabel, java.lang.Object x, java.sql.SQLType targetSqlType)`
`void` `updateObject(java.lang.String columnLabel, java.lang.Object x, java.sql.SQLType targetSqlType, int scaleOrLength)`
`void` `updateRef(int param1, java.sql.Ref param2)`
`void` `updateRef(java.lang.String param1, java.sql.Ref param2)`
`void` `updateRow()`
`void` `updateRowId(int columnIndex, java.sql.RowId x)`
`void` `updateRowId(java.lang.String columnLabel, java.sql.RowId x)`
`void` `updateShort(int columnIndex, short x)`
`void` `updateShort(java.lang.String columnName, short x)`
`void` `updateSQLXML(int columnIndex, java.sql.SQLXML xmlObject)`
`void` `updateSQLXML(java.lang.String columnLabel, java.sql.SQLXML xmlObject)`
`void` `updateString(int columnIndex, java.lang.String x)`
`void` `updateString(java.lang.String columnName, java.lang.String x)`
`void` `updateTime(int columnIndex, java.sql.Time x)`
`void` `updateTime(java.lang.String columnName, java.sql.Time x)`
`void` `updateTimestamp(int columnIndex, java.sql.Timestamp x)`
`void` `updateTimestamp(java.lang.String columnName, java.sql.Timestamp x)`
`boolean` `wasNull()`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### connection

    protected final FBConnection connection

#### gdsHelper

    protected final GDSHelper gdsHelper

#### rowDescriptor

    protected final RowDescriptor rowDescriptor

#### row

    protected RowValue row

### Constructor Detail

#### FBResultSet

    public FBResultSet(FBConnection connection,
                       FBStatement fbStatement,
                       FbStatement stmt,
                       FBObjectListener.ResultSetListener listener,
                       boolean metaDataQuery,
                       int rsType,
                       int rsConcurrency,
                       int rsHoldability,
                       boolean cached)
                throws java.sql.SQLException

Creates a new `FBResultSet` instance.

Throws:
  `java.sql.SQLException`

#### FBResultSet

    public FBResultSet(RowDescriptor rowDescriptor,
                       java.util.List<RowValue> rows,
                       FBObjectListener.ResultSetListener listener)
                throws java.sql.SQLException

Creates a FBResultSet with the columns specified by `rowDescriptor` and the data in `rows`.

This constructor is intended for metadata result sets, but can be used for other purposes as well.

Current implementation will ensure that strings will be trimmed on retrieval.

Parameters:
  `rowDescriptor` - Column definition
  `rows` - Row data
Throws:
  `java.sql.SQLException`

#### FBResultSet

    public FBResultSet(RowDescriptor rowDescriptor,
                       java.util.List<RowValue> rows)
                throws java.sql.SQLException

Creates a FBResultSet with the columns specified by `rowDescriptor` and the data in `rows`.

This constructor is intended for metadata result sets, but can be used for other purposes as well.

Current implementation will ensure that strings will be trimmed on retrieval.

Parameters:
  `rowDescriptor` - Column definition
  `rows` - Row data
Throws:
  `java.sql.SQLException`

#### FBResultSet

    public FBResultSet(RowDescriptor rowDescriptor,
                       FBConnection connection,
                       java.util.List<RowValue> rows,
                       boolean retrieveBlobs)
                throws java.sql.SQLException

Creates a FBResultSet with the columns specified by `rowDescriptor` and the data in `rows`.

This constructor is intended for metadata result sets, but can be used for other purposes as well.

Current implementation will ensure that strings will be trimmed on retrieval.

Parameters:
  `rowDescriptor` - Column definition
  `connection` - Connection (cannot be null when `retrieveBlobs` is `true`
  `rows` - Row data
  `retrieveBlobs` - `true` retrieves the blob data
Throws:
  `java.sql.SQLException`

### Method Detail

#### allRowsFetched

    public void allRowsFetched(org.firebirdsql.jdbc.FBFetcher fetcher)
                        throws java.sql.SQLException

Description copied from interface: `FBObjectListener.FetcherListener`
Notify listener that underlying fetcher fetched all rows.

Specified by:
  `allRowsFetched` in interface `FBObjectListener.FetcherListener`
Parameters:
  `fetcher` - fetcher that fetched all rows.
Throws:
  `java.sql.SQLException`

#### fetcherClosed

    public void fetcherClosed(org.firebirdsql.jdbc.FBFetcher fetcher)
                       throws java.sql.SQLException

Description copied from interface: `FBObjectListener.FetcherListener`
Notify listener that underlying fetcher is closed.

Specified by:
  `fetcherClosed` in interface `FBObjectListener.FetcherListener`
Parameters:
  `fetcher` - fetcher that was closed.
Throws:
  `java.sql.SQLException`

#### rowChanged

    public void rowChanged(org.firebirdsql.jdbc.FBFetcher fetcher,
                           RowValue newRow)
                    throws java.sql.SQLException

Description copied from interface: `FBObjectListener.FetcherListener`
Notify listener that underlying row was changed.

Specified by:
  `rowChanged` in interface `FBObjectListener.FetcherListener`
Parameters:
  `fetcher` - instance of `FBFetcher` that caused this event.
  `newRow` - new row.
Throws:
  `java.sql.SQLException`

#### checkCursorMove

    protected void checkCursorMove()
                            throws java.sql.SQLException

Check if statement is open and prepare statement for cursor move.

Throws:
  `java.sql.SQLException` - if statement is closed.

#### checkOpen

    protected void checkOpen()
                      throws java.sql.SQLException

Check if ResultSet is open.

Throws:
  `java.sql.SQLException` - if ResultSet is closed.

#### checkScrollable

    protected void checkScrollable()
                            throws java.sql.SQLException

Checks if the result set is scrollable

Throws:
  `java.sql.SQLException` - if ResultSet is not scrollable

#### closeFields

    protected void closeFields()
                        throws java.sql.SQLException

Close the fields if they were open (applies mainly to the stream fields).

Throws:
  `java.sql.SQLException` - if something wrong happened.

#### next

    public boolean next()
                 throws java.sql.SQLException

Specified by:
  `next` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### close

    public void close()
               throws java.sql.SQLException

Specified by:
  `close` in interface `java.lang.AutoCloseable`
Specified by:
  `close` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### isClosed

    public boolean isClosed()
                     throws java.sql.SQLException

Specified by:
  `isClosed` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### wasNull

    public boolean wasNull()
                    throws java.sql.SQLException

Specified by:
  `wasNull` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getAsciiStream

    public final java.io.InputStream getAsciiStream(int columnIndex)
                                             throws java.sql.SQLException

Implementation note: works identical to `getBinaryStream(int)`.

Specified by:
  `getAsciiStream` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getBigDecimal

    public java.math.BigDecimal getBigDecimal(int columnIndex)
                                       throws java.sql.SQLException

Specified by:
  `getBigDecimal` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getBinaryStream

    public java.io.InputStream getBinaryStream(int columnIndex)
                                        throws java.sql.SQLException

Specified by:
  `getBinaryStream` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getBlob

    public java.sql.Blob getBlob(int columnIndex)
                          throws java.sql.SQLException

Specified by:
  `getBlob` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getBoolean

    public boolean getBoolean(int columnIndex)
                       throws java.sql.SQLException

Specified by:
  `getBoolean` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getByte

    public byte getByte(int columnIndex)
                 throws java.sql.SQLException

Specified by:
  `getByte` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getBytes

    public byte[] getBytes(int columnIndex)
                    throws java.sql.SQLException

Specified by:
  `getBytes` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getDate

    public java.sql.Date getDate(int columnIndex)
                          throws java.sql.SQLException

Specified by:
  `getDate` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getDouble

    public double getDouble(int columnIndex)
                     throws java.sql.SQLException

Specified by:
  `getDouble` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getFloat

    public float getFloat(int columnIndex)
                   throws java.sql.SQLException

Specified by:
  `getFloat` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getInt

    public int getInt(int columnIndex)
               throws java.sql.SQLException

Specified by:
  `getInt` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getLong

    public long getLong(int columnIndex)
                 throws java.sql.SQLException

Specified by:
  `getLong` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getObject

    public java.lang.Object getObject(int columnIndex)
                               throws java.sql.SQLException

Specified by:
  `getObject` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getShort

    public short getShort(int columnIndex)
                   throws java.sql.SQLException

Specified by:
  `getShort` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getString

    public java.lang.String getString(int columnIndex)
                               throws java.sql.SQLException

Specified by:
  `getString` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getNString

    public java.lang.String getNString(int columnIndex)
                                throws java.sql.SQLException

Implementation note: This method behaves exactly the same as `getString(int)`.

Specified by:
  `getNString` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getTime

    public java.sql.Time getTime(int columnIndex)
                          throws java.sql.SQLException

Specified by:
  `getTime` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getTimestamp

    public java.sql.Timestamp getTimestamp(int columnIndex)
                                    throws java.sql.SQLException

Specified by:
  `getTimestamp` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getUnicodeStream

    @Deprecated
    public java.io.InputStream getUnicodeStream(int columnIndex)
                                                      throws java.sql.SQLException

Deprecated.
Method is no longer supported since Jaybird 3.0.

For old behavior use `getBinaryStream(int)`. For JDBC suggested behavior, use `getCharacterStream(int)`.

Specified by:
  `getUnicodeStream` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLFeatureNotSupportedException` - Always
  `java.sql.SQLException`

#### getNCharacterStream

    public java.io.Reader getNCharacterStream(int columnIndex)
                                       throws java.sql.SQLException

Implementation note: This method behaves exactly the same as `getCharacterStream(int)`.

Specified by:
  `getNCharacterStream` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getField

    public FBField getField(int columnIndex)
                     throws java.sql.SQLException

Get the `FBField` object at the given column index

Parameters:
  `columnIndex` - The index of the parameter, 1 is the first index
Throws:
  `java.sql.SQLException` - If there is an error accessing the field

#### getField

    public FBField getField(int columnIndex,
                            boolean checkRowPosition)
                     throws java.sql.SQLException

Factory method for the field access objects

Throws:
  `java.sql.SQLException`

#### getField

    public FBField getField(java.lang.String columnName)
                     throws java.sql.SQLException

Get a `FBField` by name.

Parameters:
  `columnName` - The name of the field to be retrieved
Throws:
  `java.sql.SQLException` - if the field cannot be retrieved

#### getBigDecimal

    @Deprecated
    public java.math.BigDecimal getBigDecimal(int columnIndex,
                                                           int scale)
                                                    throws java.sql.SQLException

Deprecated.

Implementation note: ignores `scale` and behaves identical to `getBigDecimal(int)`.

Specified by:
  `getBigDecimal` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getString

    public java.lang.String getString(java.lang.String columnName)
                               throws java.sql.SQLException

Specified by:
  `getString` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getNString

    public java.lang.String getNString(java.lang.String columnLabel)
                                throws java.sql.SQLException

Implementation note: This method behaves exactly the same as `getString(String)`.

Specified by:
  `getNString` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getBoolean

    public boolean getBoolean(java.lang.String columnName)
                       throws java.sql.SQLException

Specified by:
  `getBoolean` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getByte

    public byte getByte(java.lang.String columnName)
                 throws java.sql.SQLException

Specified by:
  `getByte` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getShort

    public short getShort(java.lang.String columnName)
                   throws java.sql.SQLException

Specified by:
  `getShort` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getInt

    public int getInt(java.lang.String columnName)
               throws java.sql.SQLException

Specified by:
  `getInt` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getLong

    public long getLong(java.lang.String columnName)
                 throws java.sql.SQLException

Specified by:
  `getLong` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getFloat

    public float getFloat(java.lang.String columnName)
                   throws java.sql.SQLException

Specified by:
  `getFloat` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getDouble

    public double getDouble(java.lang.String columnName)
                     throws java.sql.SQLException

Specified by:
  `getDouble` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getBigDecimal

    @Deprecated
    public java.math.BigDecimal getBigDecimal(java.lang.String columnName,
                                                           int scale)
                                                    throws java.sql.SQLException

Deprecated.

Implementation note: ignores `scale` and behaves identical to `getBigDecimal(String)`.

Specified by:
  `getBigDecimal` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getBytes

    public byte[] getBytes(java.lang.String columnName)
                    throws java.sql.SQLException

Specified by:
  `getBytes` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getDate

    public java.sql.Date getDate(java.lang.String columnName)
                          throws java.sql.SQLException

Specified by:
  `getDate` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getTime

    public java.sql.Time getTime(java.lang.String columnName)
                          throws java.sql.SQLException

Specified by:
  `getTime` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getTimestamp

    public java.sql.Timestamp getTimestamp(java.lang.String columnName)
                                    throws java.sql.SQLException

Specified by:
  `getTimestamp` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getAsciiStream

    public final java.io.InputStream getAsciiStream(java.lang.String columnName)
                                             throws java.sql.SQLException

Implementation note: works identical to `getBinaryStream(String)`.

Specified by:
  `getAsciiStream` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getUnicodeStream

    @Deprecated
    public java.io.InputStream getUnicodeStream(java.lang.String columnName)
                                                      throws java.sql.SQLException

Deprecated.
Method is no longer supported since Jaybird 3.0.

For old behavior use `getBinaryStream(String)`. For JDBC suggested behavior, use `getCharacterStream(String)`.

Specified by:
  `getUnicodeStream` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLFeatureNotSupportedException` - Always
  `java.sql.SQLException`

#### getNCharacterStream

    public java.io.Reader getNCharacterStream(java.lang.String columnLabel)
                                       throws java.sql.SQLException

Implementation note: This method behaves exactly the same as `getCharacterStream(String)`.

Specified by:
  `getNCharacterStream` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getBinaryStream

    public java.io.InputStream getBinaryStream(java.lang.String columnName)
                                        throws java.sql.SQLException

Specified by:
  `getBinaryStream` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getWarnings

    public java.sql.SQLWarning getWarnings()
                                    throws java.sql.SQLException

Specified by:
  `getWarnings` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### clearWarnings

    public void clearWarnings()
                       throws java.sql.SQLException

Specified by:
  `clearWarnings` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getCursorName

    public java.lang.String getCursorName()
                                   throws java.sql.SQLException

Specified by:
  `getCursorName` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getMetaData

    public java.sql.ResultSetMetaData getMetaData()
                                           throws java.sql.SQLException

Specified by:
  `getMetaData` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getObject

    public java.lang.Object getObject(java.lang.String columnName)
                               throws java.sql.SQLException

Specified by:
  `getObject` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### findColumn

    public int findColumn(java.lang.String columnName)
                   throws java.sql.SQLException

Specified by:
  `findColumn` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getCharacterStream

    public java.io.Reader getCharacterStream(int columnIndex)
                                      throws java.sql.SQLException

Specified by:
  `getCharacterStream` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getCharacterStream

    public java.io.Reader getCharacterStream(java.lang.String columnName)
                                      throws java.sql.SQLException

Specified by:
  `getCharacterStream` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getBigDecimal

    public java.math.BigDecimal getBigDecimal(java.lang.String columnName)
                                       throws java.sql.SQLException

Specified by:
  `getBigDecimal` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### isBeforeFirst

    public boolean isBeforeFirst()
                          throws java.sql.SQLException

Specified by:
  `isBeforeFirst` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### isAfterLast

    public boolean isAfterLast()
                        throws java.sql.SQLException

Specified by:
  `isAfterLast` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### isFirst

    public boolean isFirst()
                    throws java.sql.SQLException

Specified by:
  `isFirst` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### isLast

    public boolean isLast()
                   throws java.sql.SQLException

Specified by:
  `isLast` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### beforeFirst

    public void beforeFirst()
                     throws java.sql.SQLException

Specified by:
  `beforeFirst` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### afterLast

    public void afterLast()
                   throws java.sql.SQLException

Specified by:
  `afterLast` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### first

    public boolean first()
                  throws java.sql.SQLException

Specified by:
  `first` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### last

    public boolean last()
                 throws java.sql.SQLException

Specified by:
  `last` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getRow

    public int getRow()
               throws java.sql.SQLException

Specified by:
  `getRow` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### absolute

    public boolean absolute(int row)
                     throws java.sql.SQLException

Specified by:
  `absolute` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### relative

    public boolean relative(int rows)
                     throws java.sql.SQLException

Specified by:
  `relative` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### previous

    public boolean previous()
                     throws java.sql.SQLException

Specified by:
  `previous` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### setFetchDirection

    public void setFetchDirection(int direction)
                           throws java.sql.SQLException

Specified by:
  `setFetchDirection` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getFetchDirection

    public int getFetchDirection()
                          throws java.sql.SQLException

Specified by:
  `getFetchDirection` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### setFetchSize

    public void setFetchSize(int rows)
                      throws java.sql.SQLException

Specified by:
  `setFetchSize` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getFetchSize

    public int getFetchSize()
                     throws java.sql.SQLException

Specified by:
  `getFetchSize` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getType

    public int getType()
                throws java.sql.SQLException

Specified by:
  `getType` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getConcurrency

    public int getConcurrency()
                       throws java.sql.SQLException

Specified by:
  `getConcurrency` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getHoldability

    public int getHoldability()
                       throws java.sql.SQLException

Specified by:
  `getHoldability` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### rowUpdated

    public boolean rowUpdated()
                       throws java.sql.SQLException

Specified by:
  `rowUpdated` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### rowInserted

    public boolean rowInserted()
                        throws java.sql.SQLException

Specified by:
  `rowInserted` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### rowDeleted

    public boolean rowDeleted()
                       throws java.sql.SQLException

Specified by:
  `rowDeleted` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateNull

    public void updateNull(int columnIndex)
                    throws java.sql.SQLException

Specified by:
  `updateNull` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateBoolean

    public void updateBoolean(int columnIndex,
                              boolean x)
                       throws java.sql.SQLException

Specified by:
  `updateBoolean` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateByte

    public void updateByte(int columnIndex,
                           byte x)
                    throws java.sql.SQLException

Specified by:
  `updateByte` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateShort

    public void updateShort(int columnIndex,
                            short x)
                     throws java.sql.SQLException

Specified by:
  `updateShort` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateInt

    public void updateInt(int columnIndex,
                          int x)
                   throws java.sql.SQLException

Specified by:
  `updateInt` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateLong

    public void updateLong(int columnIndex,
                           long x)
                    throws java.sql.SQLException

Specified by:
  `updateLong` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateFloat

    public void updateFloat(int columnIndex,
                            float x)
                     throws java.sql.SQLException

Specified by:
  `updateFloat` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateDouble

    public void updateDouble(int columnIndex,
                             double x)
                      throws java.sql.SQLException

Specified by:
  `updateDouble` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateBigDecimal

    public void updateBigDecimal(int columnIndex,
                                 java.math.BigDecimal x)
                          throws java.sql.SQLException

Specified by:
  `updateBigDecimal` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateString

    public void updateString(int columnIndex,
                             java.lang.String x)
                      throws java.sql.SQLException

Specified by:
  `updateString` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateBytes

    public void updateBytes(int columnIndex,
                            byte[] x)
                     throws java.sql.SQLException

Specified by:
  `updateBytes` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateDate

    public void updateDate(int columnIndex,
                           java.sql.Date x)
                    throws java.sql.SQLException

Specified by:
  `updateDate` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateTime

    public void updateTime(int columnIndex,
                           java.sql.Time x)
                    throws java.sql.SQLException

Specified by:
  `updateTime` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateTimestamp

    public void updateTimestamp(int columnIndex,
                                java.sql.Timestamp x)
                         throws java.sql.SQLException

Specified by:
  `updateTimestamp` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateBinaryStream

    public void updateBinaryStream(int columnIndex,
                                   java.io.InputStream x,
                                   int length)
                            throws java.sql.SQLException

Specified by:
  `updateBinaryStream` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateBinaryStream

    public void updateBinaryStream(int columnIndex,
                                   java.io.InputStream x,
                                   long length)
                            throws java.sql.SQLException

Specified by:
  `updateBinaryStream` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateBinaryStream

    public void updateBinaryStream(int columnIndex,
                                   java.io.InputStream x)
                            throws java.sql.SQLException

Specified by:
  `updateBinaryStream` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateBinaryStream

    public void updateBinaryStream(java.lang.String columnName,
                                   java.io.InputStream x,
                                   int length)
                            throws java.sql.SQLException

Specified by:
  `updateBinaryStream` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateBinaryStream

    public void updateBinaryStream(java.lang.String columnLabel,
                                   java.io.InputStream x,
                                   long length)
                            throws java.sql.SQLException

Specified by:
  `updateBinaryStream` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateBinaryStream

    public void updateBinaryStream(java.lang.String columnLabel,
                                   java.io.InputStream x)
                            throws java.sql.SQLException

Specified by:
  `updateBinaryStream` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateObject

    public void updateObject(int columnIndex,
                             java.lang.Object x,
                             int scale)
                      throws java.sql.SQLException

Specified by:
  `updateObject` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateObject

    public void updateObject(int columnIndex,
                             java.lang.Object x,
                             java.sql.SQLType targetSqlType,
                             int scaleOrLength)
                      throws java.sql.SQLException

Jaybird delegates to `updateObject(int, Object, int)` and ignores the value of `targetSqlType`

Specified by:
  `updateObject` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateObject

    public void updateObject(int columnIndex,
                             java.lang.Object x)
                      throws java.sql.SQLException

Specified by:
  `updateObject` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateObject

    public void updateObject(int columnIndex,
                             java.lang.Object x,
                             java.sql.SQLType targetSqlType)
                      throws java.sql.SQLException

Jaybird delegates to `updateObject(int, Object)` and ignores the value of `targetSqlType`

Specified by:
  `updateObject` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateNull

    public void updateNull(java.lang.String columnName)
                    throws java.sql.SQLException

Specified by:
  `updateNull` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateBoolean

    public void updateBoolean(java.lang.String columnName,
                              boolean x)
                       throws java.sql.SQLException

Specified by:
  `updateBoolean` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateByte

    public void updateByte(java.lang.String columnName,
                           byte x)
                    throws java.sql.SQLException

Specified by:
  `updateByte` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateShort

    public void updateShort(java.lang.String columnName,
                            short x)
                     throws java.sql.SQLException

Specified by:
  `updateShort` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateInt

    public void updateInt(java.lang.String columnName,
                          int x)
                   throws java.sql.SQLException

Specified by:
  `updateInt` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateLong

    public void updateLong(java.lang.String columnName,
                           long x)
                    throws java.sql.SQLException

Specified by:
  `updateLong` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateFloat

    public void updateFloat(java.lang.String columnName,
                            float x)
                     throws java.sql.SQLException

Specified by:
  `updateFloat` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateDouble

    public void updateDouble(java.lang.String columnName,
                             double x)
                      throws java.sql.SQLException

Specified by:
  `updateDouble` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateBigDecimal

    public void updateBigDecimal(java.lang.String columnName,
                                 java.math.BigDecimal x)
                          throws java.sql.SQLException

Specified by:
  `updateBigDecimal` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateString

    public void updateString(java.lang.String columnName,
                             java.lang.String x)
                      throws java.sql.SQLException

Specified by:
  `updateString` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateNString

    public void updateNString(int columnIndex,
                              java.lang.String string)
                       throws java.sql.SQLException

Implementation note: This method behaves exactly the same as `updateString(int, String)`.

Specified by:
  `updateNString` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateNString

    public void updateNString(java.lang.String columnLabel,
                              java.lang.String string)
                       throws java.sql.SQLException

Implementation note: This method behaves exactly the same as `updateString(String, String)`.

Specified by:
  `updateNString` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateBytes

    public void updateBytes(java.lang.String columnName,
                            byte[] x)
                     throws java.sql.SQLException

Specified by:
  `updateBytes` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateDate

    public void updateDate(java.lang.String columnName,
                           java.sql.Date x)
                    throws java.sql.SQLException

Specified by:
  `updateDate` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateTime

    public void updateTime(java.lang.String columnName,
                           java.sql.Time x)
                    throws java.sql.SQLException

Specified by:
  `updateTime` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateTimestamp

    public void updateTimestamp(java.lang.String columnName,
                                java.sql.Timestamp x)
                         throws java.sql.SQLException

Specified by:
  `updateTimestamp` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateAsciiStream

    public final void updateAsciiStream(int columnIndex,
                                        java.io.InputStream x,
                                        int length)
                                 throws java.sql.SQLException

Implementation note: works identical to `updateBinaryStream(int, InputStream, int)`.

Specified by:
  `updateAsciiStream` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateAsciiStream

    public final void updateAsciiStream(java.lang.String columnName,
                                        java.io.InputStream x,
                                        int length)
                                 throws java.sql.SQLException

Implementation note: works identical to `updateBinaryStream(String, InputStream, int)`.

Specified by:
  `updateAsciiStream` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateAsciiStream

    public final void updateAsciiStream(int columnIndex,
                                        java.io.InputStream x,
                                        long length)
                                 throws java.sql.SQLException

Implementation note: works identical to `updateBinaryStream(int, InputStream, long)`.

Specified by:
  `updateAsciiStream` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateAsciiStream

    public final void updateAsciiStream(int columnIndex,
                                        java.io.InputStream x)
                                 throws java.sql.SQLException

Implementation note: works identical to `updateBinaryStream(int, InputStream)`.

Specified by:
  `updateAsciiStream` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateAsciiStream

    public final void updateAsciiStream(java.lang.String columnLabel,
                                        java.io.InputStream x,
                                        long length)
                                 throws java.sql.SQLException

Implementation note: works identical to `updateBinaryStream(String, InputStream, long)`.

Specified by:
  `updateAsciiStream` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateAsciiStream

    public final void updateAsciiStream(java.lang.String columnLabel,
                                        java.io.InputStream x)
                                 throws java.sql.SQLException

Implementation note: works identical to `updateBinaryStream(String, InputStream)`.

Specified by:
  `updateAsciiStream` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateCharacterStream

    public void updateCharacterStream(int columnIndex,
                                      java.io.Reader x,
                                      int length)
                               throws java.sql.SQLException

Specified by:
  `updateCharacterStream` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateCharacterStream

    public void updateCharacterStream(int columnIndex,
                                      java.io.Reader x,
                                      long length)
                               throws java.sql.SQLException

Specified by:
  `updateCharacterStream` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateCharacterStream

    public void updateCharacterStream(int columnIndex,
                                      java.io.Reader x)
                               throws java.sql.SQLException

Specified by:
  `updateCharacterStream` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateCharacterStream

    public void updateCharacterStream(java.lang.String columnName,
                                      java.io.Reader reader,
                                      int length)
                               throws java.sql.SQLException

Specified by:
  `updateCharacterStream` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateCharacterStream

    public void updateCharacterStream(java.lang.String columnLabel,
                                      java.io.Reader reader,
                                      long length)
                               throws java.sql.SQLException

Specified by:
  `updateCharacterStream` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateCharacterStream

    public void updateCharacterStream(java.lang.String columnLabel,
                                      java.io.Reader reader)
                               throws java.sql.SQLException

Specified by:
  `updateCharacterStream` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateNCharacterStream

    public void updateNCharacterStream(int columnIndex,
                                       java.io.Reader x,
                                       long length)
                                throws java.sql.SQLException

Implementation note: This method behaves exactly the same as `updateCharacterStream(int, Reader, long)`.

Specified by:
  `updateNCharacterStream` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateNCharacterStream

    public void updateNCharacterStream(int columnIndex,
                                       java.io.Reader x)
                                throws java.sql.SQLException

Implementation note: This method behaves exactly the same as `updateCharacterStream(int, Reader)`.

Specified by:
  `updateNCharacterStream` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateNCharacterStream

    public void updateNCharacterStream(java.lang.String columnLabel,
                                       java.io.Reader reader,
                                       long length)
                                throws java.sql.SQLException

Implementation note: This method behaves exactly the same as `updateClob(String, Reader, long)`.

Specified by:
  `updateNCharacterStream` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateNCharacterStream

    public void updateNCharacterStream(java.lang.String columnLabel,
                                       java.io.Reader reader)
                                throws java.sql.SQLException

Implementation note: This method behaves exactly the same as `updateCharacterStream(String, Reader)`.

Specified by:
  `updateNCharacterStream` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateObject

    public void updateObject(java.lang.String columnName,
                             java.lang.Object x,
                             int scale)
                      throws java.sql.SQLException

Implementation note: This method behaves exactly the same as `updateObject(String, Object)`.

Specified by:
  `updateObject` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateObject

    public void updateObject(java.lang.String columnLabel,
                             java.lang.Object x,
                             java.sql.SQLType targetSqlType,
                             int scaleOrLength)
                      throws java.sql.SQLException

Jaybird delegates to `updateObject(String, Object, int)` and ignores the value of `targetSqlType`

Specified by:
  `updateObject` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateObject

    public void updateObject(java.lang.String columnName,
                             java.lang.Object x)
                      throws java.sql.SQLException

Specified by:
  `updateObject` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateObject

    public void updateObject(java.lang.String columnLabel,
                             java.lang.Object x,
                             java.sql.SQLType targetSqlType)
                      throws java.sql.SQLException

Jaybird delegates to `updateObject(String, Object)` and ignores the value of `targetSqlType`

Specified by:
  `updateObject` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### insertRow

    public void insertRow()
                   throws java.sql.SQLException

Specified by:
  `insertRow` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateRow

    public void updateRow()
                   throws java.sql.SQLException

Specified by:
  `updateRow` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### deleteRow

    public void deleteRow()
                   throws java.sql.SQLException

Specified by:
  `deleteRow` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### refreshRow

    public void refreshRow()
                    throws java.sql.SQLException

Specified by:
  `refreshRow` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### cancelRowUpdates

    public void cancelRowUpdates()
                          throws java.sql.SQLException

Specified by:
  `cancelRowUpdates` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### moveToInsertRow

    public void moveToInsertRow()
                         throws java.sql.SQLException

Specified by:
  `moveToInsertRow` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### moveToCurrentRow

    public void moveToCurrentRow()
                          throws java.sql.SQLException

Specified by:
  `moveToCurrentRow` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getStatement

    public java.sql.Statement getStatement()

Specified by:
  `getStatement` in interface `java.sql.ResultSet`

#### getObject

    public java.lang.Object getObject(int i,
                                      java.util.Map<java.lang.String,java.lang.Class<?>> map)
                               throws java.sql.SQLException

Specified by:
  `getObject` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getRef

    public java.sql.Ref getRef(int i)
                        throws java.sql.SQLException

Specified by:
  `getRef` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getClob

    public java.sql.Clob getClob(int i)
                          throws java.sql.SQLException

Specified by:
  `getClob` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getArray

    public java.sql.Array getArray(int i)
                            throws java.sql.SQLException

Specified by:
  `getArray` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getObject

    public java.lang.Object getObject(java.lang.String columnName,
                                      java.util.Map<java.lang.String,java.lang.Class<?>> map)
                               throws java.sql.SQLException

Specified by:
  `getObject` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getRef

    public java.sql.Ref getRef(java.lang.String columnName)
                        throws java.sql.SQLException

Specified by:
  `getRef` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getBlob

    public java.sql.Blob getBlob(java.lang.String columnName)
                          throws java.sql.SQLException

Specified by:
  `getBlob` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getClob

    public java.sql.Clob getClob(java.lang.String columnName)
                          throws java.sql.SQLException

Specified by:
  `getClob` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getArray

    public java.sql.Array getArray(java.lang.String columnName)
                            throws java.sql.SQLException

Specified by:
  `getArray` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getDate

    public java.sql.Date getDate(int columnIndex,
                                 java.util.Calendar cal)
                          throws java.sql.SQLException

Specified by:
  `getDate` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getDate

    public java.sql.Date getDate(java.lang.String columnName,
                                 java.util.Calendar cal)
                          throws java.sql.SQLException

Specified by:
  `getDate` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getTime

    public java.sql.Time getTime(int columnIndex,
                                 java.util.Calendar cal)
                          throws java.sql.SQLException

Specified by:
  `getTime` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getTime

    public java.sql.Time getTime(java.lang.String columnName,
                                 java.util.Calendar cal)
                          throws java.sql.SQLException

Specified by:
  `getTime` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getTimestamp

    public java.sql.Timestamp getTimestamp(int columnIndex,
                                           java.util.Calendar cal)
                                    throws java.sql.SQLException

Specified by:
  `getTimestamp` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getTimestamp

    public java.sql.Timestamp getTimestamp(java.lang.String columnName,
                                           java.util.Calendar cal)
                                    throws java.sql.SQLException

Specified by:
  `getTimestamp` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getURL

    public java.net.URL getURL(int param1)
                        throws java.sql.SQLException

Specified by:
  `getURL` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getURL

    public java.net.URL getURL(java.lang.String param1)
                        throws java.sql.SQLException

Specified by:
  `getURL` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getObject

    public <T> T getObject(int columnIndex,
                           java.lang.Class<T> type)
                    throws java.sql.SQLException

Specified by:
  `getObject` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getObject

    public <T> T getObject(java.lang.String columnLabel,
                           java.lang.Class<T> type)
                    throws java.sql.SQLException

Specified by:
  `getObject` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateRef

    public void updateRef(int param1,
                          java.sql.Ref param2)
                   throws java.sql.SQLException

Specified by:
  `updateRef` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateRef

    public void updateRef(java.lang.String param1,
                          java.sql.Ref param2)
                   throws java.sql.SQLException

Specified by:
  `updateRef` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateBlob

    public void updateBlob(int columnIndex,
                           java.sql.Blob blob)
                    throws java.sql.SQLException

Specified by:
  `updateBlob` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateBlob

    public void updateBlob(java.lang.String columnLabel,
                           java.sql.Blob blob)
                    throws java.sql.SQLException

Specified by:
  `updateBlob` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateBlob

    public void updateBlob(int columnIndex,
                           java.io.InputStream inputStream,
                           long length)
                    throws java.sql.SQLException

Specified by:
  `updateBlob` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateBlob

    public void updateBlob(int columnIndex,
                           java.io.InputStream inputStream)
                    throws java.sql.SQLException

Specified by:
  `updateBlob` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateBlob

    public void updateBlob(java.lang.String columnLabel,
                           java.io.InputStream inputStream,
                           long length)
                    throws java.sql.SQLException

Specified by:
  `updateBlob` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateBlob

    public void updateBlob(java.lang.String columnLabel,
                           java.io.InputStream inputStream)
                    throws java.sql.SQLException

Specified by:
  `updateBlob` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateClob

    public void updateClob(int columnIndex,
                           java.sql.Clob clob)
                    throws java.sql.SQLException

Specified by:
  `updateClob` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateClob

    public void updateClob(java.lang.String columnLabel,
                           java.sql.Clob clob)
                    throws java.sql.SQLException

Specified by:
  `updateClob` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateClob

    public void updateClob(int columnIndex,
                           java.io.Reader reader,
                           long length)
                    throws java.sql.SQLException

Specified by:
  `updateClob` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateClob

    public void updateClob(int columnIndex,
                           java.io.Reader reader)
                    throws java.sql.SQLException

Specified by:
  `updateClob` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateClob

    public void updateClob(java.lang.String columnLabel,
                           java.io.Reader reader,
                           long length)
                    throws java.sql.SQLException

Specified by:
  `updateClob` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateClob

    public void updateClob(java.lang.String columnLabel,
                           java.io.Reader reader)
                    throws java.sql.SQLException

Specified by:
  `updateClob` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateArray

    public void updateArray(int param1,
                            java.sql.Array param2)
                     throws java.sql.SQLException

Specified by:
  `updateArray` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateArray

    public void updateArray(java.lang.String param1,
                            java.sql.Array param2)
                     throws java.sql.SQLException

Specified by:
  `updateArray` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getNClob

    public java.sql.NClob getNClob(int columnIndex)
                            throws java.sql.SQLException

Implementation note: This method behaves exactly the same as `getClob(int)`.

Specified by:
  `getNClob` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getNClob

    public java.sql.NClob getNClob(java.lang.String columnLabel)
                            throws java.sql.SQLException

Implementation note: This method behaves exactly the same as `getClob(String)`.

Specified by:
  `getNClob` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getRowId

    public java.sql.RowId getRowId(int columnIndex)
                            throws java.sql.SQLException

Specified by:
  `getRowId` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getRowId

    public java.sql.RowId getRowId(java.lang.String columnLabel)
                            throws java.sql.SQLException

Specified by:
  `getRowId` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getSQLXML

    public java.sql.SQLXML getSQLXML(int columnIndex)
                              throws java.sql.SQLException

Specified by:
  `getSQLXML` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getSQLXML

    public java.sql.SQLXML getSQLXML(java.lang.String columnLabel)
                              throws java.sql.SQLException

Specified by:
  `getSQLXML` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateNClob

    public void updateNClob(int columnIndex,
                            java.sql.NClob clob)
                     throws java.sql.SQLException

Implementation note: This method behaves exactly the same as `updateClob(int, Clob)`.

Specified by:
  `updateNClob` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateNClob

    public void updateNClob(int columnIndex,
                            java.io.Reader reader,
                            long length)
                     throws java.sql.SQLException

Implementation note: This method behaves exactly the same as `updateClob(int, Reader, long)`.

Specified by:
  `updateNClob` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateNClob

    public void updateNClob(int columnIndex,
                            java.io.Reader reader)
                     throws java.sql.SQLException

Implementation note: This method behaves exactly the same as `updateClob(int, Reader)`.

Specified by:
  `updateNClob` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateNClob

    public void updateNClob(java.lang.String columnLabel,
                            java.sql.NClob clob)
                     throws java.sql.SQLException

Implementation note: This method behaves exactly the same as `updateClob(String, Clob)`.

Specified by:
  `updateNClob` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateNClob

    public void updateNClob(java.lang.String columnLabel,
                            java.io.Reader reader,
                            long length)
                     throws java.sql.SQLException

Implementation note: This method behaves exactly the same as `updateClob(int, Reader, long)`.

Specified by:
  `updateNClob` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateNClob

    public void updateNClob(java.lang.String columnLabel,
                            java.io.Reader reader)
                     throws java.sql.SQLException

Implementation note: This method behaves exactly the same as `updateClob(String, Reader)`.

Specified by:
  `updateNClob` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateRowId

    public void updateRowId(int columnIndex,
                            java.sql.RowId x)
                     throws java.sql.SQLException

Specified by:
  `updateRowId` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateRowId

    public void updateRowId(java.lang.String columnLabel,
                            java.sql.RowId x)
                     throws java.sql.SQLException

Specified by:
  `updateRowId` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateSQLXML

    public void updateSQLXML(int columnIndex,
                             java.sql.SQLXML xmlObject)
                      throws java.sql.SQLException

Specified by:
  `updateSQLXML` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### updateSQLXML

    public void updateSQLXML(java.lang.String columnLabel,
                             java.sql.SQLXML xmlObject)
                      throws java.sql.SQLException

Specified by:
  `updateSQLXML` in interface `java.sql.ResultSet`
Throws:
  `java.sql.SQLException`

#### getExecutionPlan

    public java.lang.String getExecutionPlan()
                                      throws java.sql.SQLException

Description copied from interface: `FirebirdResultSet`
Get execution plan for the specified result set.

Specified by:
  `getExecutionPlan` in interface `FirebirdResultSet`
Returns:
  execution plan for this query.
Throws:
  `java.sql.SQLException` - if execution plan cannot be obtained or this result set is already closed.
See Also:
  `FirebirdPreparedStatement.getExecutionPlan()`

#### getExplainedExecutionPlan

    public java.lang.String getExplainedExecutionPlan()
                                               throws java.sql.SQLException

Description copied from interface: `FirebirdResultSet`
Get detailed execution plan for the specified result set.

Specified by:
  `getExplainedExecutionPlan` in interface `FirebirdResultSet`
Returns:
  detailed execution plan for this query.
Throws:
  `java.sql.SQLException` - if detailed execution plan cannot be obtained or this result set is already closed.
See Also:
  `FirebirdPreparedStatement.getExplainedExecutionPlan()`

#### isWrapperFor

    public boolean isWrapperFor(java.lang.Class<?> iface)
                         throws java.sql.SQLException

Specified by:
  `isWrapperFor` in interface `java.sql.Wrapper`
Throws:
  `java.sql.SQLException`

#### unwrap

    public <T> T unwrap(java.lang.Class<T> iface)
                 throws java.sql.SQLException

Specified by:
  `unwrap` in interface `java.sql.Wrapper`
Throws:
  `java.sql.SQLException`

#### addWarning

    protected void addWarning(java.sql.SQLWarning warning)