org.springframework.jdbc.support.rowset

## Class ResultSetWrappingSqlRowSet

- java.lang.Object
- - org.springframework.jdbc.support.rowset.ResultSetWrappingSqlRowSet

- All Implemented Interfaces:
    Serializable, SqlRowSet

      public class ResultSetWrappingSqlRowSet
      extends Object
      implements SqlRowSet

  Default implementation of Spring's `SqlRowSet` interface.

  This implementation wraps a `javax.sql.ResultSet`, catching any SQLExceptions and translating them to the appropriate Spring `InvalidResultSetAccessException`.

  The passed-in ResultSets should already be disconnected if the SqlRowSet is supposed to be usable in a disconnected fashion. This means that you will usually pass in a `javax.sql.rowset.CachedRowSet`, which implements the ResultSet interface.

  Note: Since JDBC 4.0, it has been clarified that any methods using a String to identify the column should be using the column label. The column label is assigned using the ALIAS keyword in the SQL query string. When the query doesn't use an ALIAS, the default label is the column name. Most JDBC ResultSet implementations follow this new pattern but there are exceptions such as the `com.sun.rowset.CachedRowSetImpl` class which only uses the column name, ignoring any column labels. As of Spring 3.0.5, ResultSetWrappingSqlRowSet will translate column labels to the correct column index to provide better support for the `com.sun.rowset.CachedRowSetImpl` which is the default implementation used by `JdbcTemplate` when working with RowSets.

  Note: This class implements the `java.io.Serializable` marker interface through the SqlRowSet interface, but is only actually serializable if the disconnected ResultSet/RowSet contained in it is serializable. Most CachedRowSet implementations are actually serializable, so this should usually work out.

  Since:
    1.2
  Author:
    Thomas Risberg, Juergen Hoeller
  See Also:
    `ResultSet`, `CachedRowSet`, `JdbcTemplate.queryForRowSet(java.lang.String)`, Serialized Form

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `ResultSetWrappingSqlRowSet(ResultSet resultSet)` Create a new ResultSetWrappingSqlRowSet for the given ResultSet.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `absolute(int row)` Moves the cursor to the given row number in the RowSet, just after the last row.
    `void` | `afterLast()` Moves the cursor to the end of this RowSet.
    `void` | `beforeFirst()` Moves the cursor to the front of this RowSet, just before the first row.
    `int` | `findColumn(String columnLabel)` Maps the given column label to its column index.
    `boolean` | `first()` Moves the cursor to the first row of this RowSet.
    `BigDecimal` | `getBigDecimal(int columnIndex)` Retrieves the value of the indicated column in the current row as an BigDecimal object.
    `BigDecimal` | `getBigDecimal(String columnLabel)` Retrieves the value of the indicated column in the current row as an BigDecimal object.
    `boolean` | `getBoolean(int columnIndex)` Retrieves the value of the indicated column in the current row as a boolean.
    `boolean` | `getBoolean(String columnLabel)` Retrieves the value of the indicated column in the current row as a boolean.
    `byte` | `getByte(int columnIndex)` Retrieves the value of the indicated column in the current row as a byte.
    `byte` | `getByte(String columnLabel)` Retrieves the value of the indicated column in the current row as a byte.
    `Date` | `getDate(int columnIndex)` Retrieves the value of the indicated column in the current row as a Date object.
    `Date` | `getDate(int columnIndex, Calendar cal)` Retrieves the value of the indicated column in the current row as a Date object.
    `Date` | `getDate(String columnLabel)` Retrieves the value of the indicated column in the current row as a Date object.
    `Date` | `getDate(String columnLabel, Calendar cal)` Retrieves the value of the indicated column in the current row as a Date object.
    `double` | `getDouble(int columnIndex)` Retrieves the value of the indicated column in the current row as a Double object.
    `double` | `getDouble(String columnLabel)` Retrieves the value of the indicated column in the current row as a Double object.
    `float` | `getFloat(int columnIndex)` Retrieves the value of the indicated column in the current row as a float.
    `float` | `getFloat(String columnLabel)` Retrieves the value of the indicated column in the current row as a float.
    `int` | `getInt(int columnIndex)` Retrieves the value of the indicated column in the current row as an int.
    `int` | `getInt(String columnLabel)` Retrieves the value of the indicated column in the current row as an int.
    `long` | `getLong(int columnIndex)` Retrieves the value of the indicated column in the current row as a long.
    `long` | `getLong(String columnLabel)` Retrieves the value of the indicated column in the current row as a long.
    `SqlRowSetMetaData` | `getMetaData()` Retrieves the meta data (number, types and properties for the columns) of this row set.
    `Object` | `getObject(int columnIndex)` Retrieves the value of the indicated column in the current row as an Object.
    `Object` | `getObject(int i, Map<String,Class<?>> map)` Retrieves the value of the indicated column in the current row as an Object.
    `Object` | `getObject(String columnLabel)` Retrieves the value of the indicated column in the current row as an Object.
    `Object` | `getObject(String columnLabel, Map<String,Class<?>> map)` Retrieves the value of the indicated column in the current row as an Object.
    `ResultSet` | `getResultSet()` Return the underlying ResultSet (usually a `javax.sql.rowset.CachedRowSet`).
    `int` | `getRow()` Retrieves the current row number.
    `short` | `getShort(int columnIndex)` Retrieves the value of the indicated column in the current row as a short.
    `short` | `getShort(String columnLabel)` Retrieves the value of the indicated column in the current row as a short.
    `String` | `getString(int columnIndex)` Retrieves the value of the indicated column in the current row as a String.
    `String` | `getString(String columnLabel)` Retrieves the value of the indicated column in the current row as a String.
    `Time` | `getTime(int columnIndex)` Retrieves the value of the indicated column in the current row as a Time object.
    `Time` | `getTime(int columnIndex, Calendar cal)` Retrieves the value of the indicated column in the current row as a Time object.
    `Time` | `getTime(String columnLabel)` Retrieves the value of the indicated column in the current row as a Time object.
    `Time` | `getTime(String columnLabel, Calendar cal)` Retrieves the value of the indicated column in the current row as a Time object.
    `Timestamp` | `getTimestamp(int columnIndex)` Retrieves the value of the indicated column in the current row as a Timestamp object.
    `Timestamp` | `getTimestamp(int columnIndex, Calendar cal)` Retrieves the value of the indicated column in the current row as a Timestamp object.
    `Timestamp` | `getTimestamp(String columnLabel)` Retrieves the value of the indicated column in the current row as a Timestamp object.
    `Timestamp` | `getTimestamp(String columnLabel, Calendar cal)` Retrieves the value of the indicated column in the current row as a Timestamp object.
    `boolean` | `isAfterLast()` Retrieves whether the cursor is after the last row of this RowSet.
    `boolean` | `isBeforeFirst()` Retrieves whether the cursor is after the first row of this RowSet.
    `boolean` | `isFirst()` Retrieves whether the cursor is on the first row of this RowSet.
    `boolean` | `isLast()` Retrieves whether the cursor is on the last row of this RowSet.
    `boolean` | `last()` Moves the cursor to the last row of this RowSet.
    `boolean` | `next()` Moves the cursor to the next row.
    `boolean` | `previous()` Moves the cursor to the previous row.
    `boolean` | `relative(int rows)` Moves the cursor a relative number f rows, either positive or negative.
    `boolean` | `wasNull()` Reports whether the last column read had a value of SQL `NULL`.

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

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

- - ### Constructor Detail

    - #### ResultSetWrappingSqlRowSet

          public ResultSetWrappingSqlRowSet(ResultSet resultSet)
                                     throws InvalidResultSetAccessException

      Create a new ResultSetWrappingSqlRowSet for the given ResultSet.
      Parameters:
        `resultSet` - a disconnected ResultSet to wrap (usually a `javax.sql.rowset.CachedRowSet`)
      Throws:
        `InvalidResultSetAccessException` - if extracting the ResultSetMetaData failed
      See Also:
        `CachedRowSet`, `ResultSet.getMetaData()`, `ResultSetWrappingSqlRowSetMetaData`

  - ### Method Detail

    - #### getResultSet

          public final ResultSet getResultSet()

      Return the underlying ResultSet (usually a `javax.sql.rowset.CachedRowSet`).
      See Also:
        `CachedRowSet`

    - #### getMetaData

          public final SqlRowSetMetaData getMetaData()

      Description copied from interface: `SqlRowSet`
      Retrieves the meta data (number, types and properties for the columns) of this row set.
      Specified by:
        `getMetaData` in interface `SqlRowSet`
      Returns:
        a corresponding SqlRowSetMetaData instance
      See Also:
        `ResultSetMetaData.getCatalogName(int)`

    - #### findColumn

          public int findColumn(String columnLabel)
                         throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Maps the given column label to its column index.
      Specified by:
        `findColumn` in interface `SqlRowSet`
      Parameters:
        `columnLabel` - the name of the column
      Returns:
        the column index for the given column label
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.findColumn(String)`

    - #### getBigDecimal

          public BigDecimal getBigDecimal(int columnIndex)
                                   throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Retrieves the value of the indicated column in the current row as an BigDecimal object.
      Specified by:
        `getBigDecimal` in interface `SqlRowSet`
      Parameters:
        `columnIndex` - the column index
      Returns:
        an BigDecimal object representing the column value
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.getBigDecimal(int)`

    - #### getBigDecimal

          public BigDecimal getBigDecimal(String columnLabel)
                                   throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Retrieves the value of the indicated column in the current row as an BigDecimal object.
      Specified by:
        `getBigDecimal` in interface `SqlRowSet`
      Parameters:
        `columnLabel` - the column label
      Returns:
        an BigDecimal object representing the column value
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.getBigDecimal(String)`

    - #### getBoolean

          public boolean getBoolean(int columnIndex)
                             throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Retrieves the value of the indicated column in the current row as a boolean.
      Specified by:
        `getBoolean` in interface `SqlRowSet`
      Parameters:
        `columnIndex` - the column index
      Returns:
        a boolean representing the column value
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.getBoolean(int)`

    - #### getBoolean

          public boolean getBoolean(String columnLabel)
                             throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Retrieves the value of the indicated column in the current row as a boolean.
      Specified by:
        `getBoolean` in interface `SqlRowSet`
      Parameters:
        `columnLabel` - the column label
      Returns:
        a boolean representing the column value
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.getBoolean(String)`

    - #### getByte

          public byte getByte(int columnIndex)
                       throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Retrieves the value of the indicated column in the current row as a byte.
      Specified by:
        `getByte` in interface `SqlRowSet`
      Parameters:
        `columnIndex` - the column index
      Returns:
        a byte representing the column value
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.getByte(int)`

    - #### getByte

          public byte getByte(String columnLabel)
                       throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Retrieves the value of the indicated column in the current row as a byte.
      Specified by:
        `getByte` in interface `SqlRowSet`
      Parameters:
        `columnLabel` - the column label
      Returns:
        a byte representing the column value
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.getByte(String)`

    - #### getDate

          public Date getDate(int columnIndex,
                              Calendar cal)
                       throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Retrieves the value of the indicated column in the current row as a Date object.
      Specified by:
        `getDate` in interface `SqlRowSet`
      Parameters:
        `columnIndex` - the column index
        `cal` - the Calendar to use in constructing the Date
      Returns:
        a Date object representing the column value
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.getDate(int, java.util.Calendar)`

    - #### getDate

          public Date getDate(int columnIndex)
                       throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Retrieves the value of the indicated column in the current row as a Date object.
      Specified by:
        `getDate` in interface `SqlRowSet`
      Parameters:
        `columnIndex` - the column index
      Returns:
        a Date object representing the column value
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.getDate(int)`

    - #### getDate

          public Date getDate(String columnLabel,
                              Calendar cal)
                       throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Retrieves the value of the indicated column in the current row as a Date object.
      Specified by:
        `getDate` in interface `SqlRowSet`
      Parameters:
        `columnLabel` - the column label
        `cal` - the Calendar to use in constructing the Date
      Returns:
        a Date object representing the column value
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.getDate(String, java.util.Calendar)`

    - #### getDate

          public Date getDate(String columnLabel)
                       throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Retrieves the value of the indicated column in the current row as a Date object.
      Specified by:
        `getDate` in interface `SqlRowSet`
      Parameters:
        `columnLabel` - the column label
      Returns:
        a Date object representing the column value
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.getDate(String)`

    - #### getDouble

          public double getDouble(int columnIndex)
                           throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Retrieves the value of the indicated column in the current row as a Double object.
      Specified by:
        `getDouble` in interface `SqlRowSet`
      Parameters:
        `columnIndex` - the column index
      Returns:
        a Double object representing the column value
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.getDouble(int)`

    - #### getDouble

          public double getDouble(String columnLabel)
                           throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Retrieves the value of the indicated column in the current row as a Double object.
      Specified by:
        `getDouble` in interface `SqlRowSet`
      Parameters:
        `columnLabel` - the column label
      Returns:
        a Double object representing the column value
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.getDouble(String)`

    - #### getFloat

          public float getFloat(int columnIndex)
                         throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Retrieves the value of the indicated column in the current row as a float.
      Specified by:
        `getFloat` in interface `SqlRowSet`
      Parameters:
        `columnIndex` - the column index
      Returns:
        a float representing the column value
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.getFloat(int)`

    - #### getFloat

          public float getFloat(String columnLabel)
                         throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Retrieves the value of the indicated column in the current row as a float.
      Specified by:
        `getFloat` in interface `SqlRowSet`
      Parameters:
        `columnLabel` - the column label
      Returns:
        a float representing the column value
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.getFloat(String)`

    - #### getInt

          public int getInt(int columnIndex)
                     throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Retrieves the value of the indicated column in the current row as an int.
      Specified by:
        `getInt` in interface `SqlRowSet`
      Parameters:
        `columnIndex` - the column index
      Returns:
        an int representing the column value
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.getInt(int)`

    - #### getInt

          public int getInt(String columnLabel)
                     throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Retrieves the value of the indicated column in the current row as an int.
      Specified by:
        `getInt` in interface `SqlRowSet`
      Parameters:
        `columnLabel` - the column label
      Returns:
        an int representing the column value
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.getInt(String)`

    - #### getLong

          public long getLong(int columnIndex)
                       throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Retrieves the value of the indicated column in the current row as a long.
      Specified by:
        `getLong` in interface `SqlRowSet`
      Parameters:
        `columnIndex` - the column index
      Returns:
        a long representing the column value
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.getLong(int)`

    - #### getLong

          public long getLong(String columnLabel)
                       throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Retrieves the value of the indicated column in the current row as a long.
      Specified by:
        `getLong` in interface `SqlRowSet`
      Parameters:
        `columnLabel` - the column label
      Returns:
        a long representing the column value
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.getLong(String)`

    - #### getObject

          public Object getObject(int i,
                                  Map<String,Class<?>> map)
                           throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Retrieves the value of the indicated column in the current row as an Object.
      Specified by:
        `getObject` in interface `SqlRowSet`
      Parameters:
        `i` - the column index
        `map` - a Map object containing the mapping from SQL types to Java types
      Returns:
        a Object representing the column value
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.getObject(int, java.util.Map)`

    - #### getObject

          public Object getObject(int columnIndex)
                           throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Retrieves the value of the indicated column in the current row as an Object.
      Specified by:
        `getObject` in interface `SqlRowSet`
      Parameters:
        `columnIndex` - the column index
      Returns:
        a Object representing the column value
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.getObject(int)`

    - #### getObject

          public Object getObject(String columnLabel,
                                  Map<String,Class<?>> map)
                           throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Retrieves the value of the indicated column in the current row as an Object.
      Specified by:
        `getObject` in interface `SqlRowSet`
      Parameters:
        `columnLabel` - the column label
        `map` - a Map object containing the mapping from SQL types to Java types
      Returns:
        a Object representing the column value
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.getObject(String, java.util.Map)`

    - #### getObject

          public Object getObject(String columnLabel)
                           throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Retrieves the value of the indicated column in the current row as an Object.
      Specified by:
        `getObject` in interface `SqlRowSet`
      Parameters:
        `columnLabel` - the column label
      Returns:
        a Object representing the column value
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.getObject(String)`

    - #### getShort

          public short getShort(int columnIndex)
                         throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Retrieves the value of the indicated column in the current row as a short.
      Specified by:
        `getShort` in interface `SqlRowSet`
      Parameters:
        `columnIndex` - the column index
      Returns:
        a short representing the column value
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.getShort(int)`

    - #### getShort

          public short getShort(String columnLabel)
                         throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Retrieves the value of the indicated column in the current row as a short.
      Specified by:
        `getShort` in interface `SqlRowSet`
      Parameters:
        `columnLabel` - the column label
      Returns:
        a short representing the column value
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.getShort(String)`

    - #### getString

          public String getString(int columnIndex)
                           throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Retrieves the value of the indicated column in the current row as a String.
      Specified by:
        `getString` in interface `SqlRowSet`
      Parameters:
        `columnIndex` - the column index
      Returns:
        a String representing the column value
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.getString(int)`

    - #### getString

          public String getString(String columnLabel)
                           throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Retrieves the value of the indicated column in the current row as a String.
      Specified by:
        `getString` in interface `SqlRowSet`
      Parameters:
        `columnLabel` - the column label
      Returns:
        a String representing the column value
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.getString(String)`

    - #### getTime

          public Time getTime(int columnIndex,
                              Calendar cal)
                       throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Retrieves the value of the indicated column in the current row as a Time object.
      Specified by:
        `getTime` in interface `SqlRowSet`
      Parameters:
        `columnIndex` - the column index
        `cal` - the Calendar to use in constructing the Date
      Returns:
        a Time object representing the column value
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.getTime(int, java.util.Calendar)`

    - #### getTime

          public Time getTime(int columnIndex)
                       throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Retrieves the value of the indicated column in the current row as a Time object.
      Specified by:
        `getTime` in interface `SqlRowSet`
      Parameters:
        `columnIndex` - the column index
      Returns:
        a Time object representing the column value
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.getTime(int)`

    - #### getTime

          public Time getTime(String columnLabel,
                              Calendar cal)
                       throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Retrieves the value of the indicated column in the current row as a Time object.
      Specified by:
        `getTime` in interface `SqlRowSet`
      Parameters:
        `columnLabel` - the column label
        `cal` - the Calendar to use in constructing the Date
      Returns:
        a Time object representing the column value
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.getTime(String, java.util.Calendar)`

    - #### getTime

          public Time getTime(String columnLabel)
                       throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Retrieves the value of the indicated column in the current row as a Time object.
      Specified by:
        `getTime` in interface `SqlRowSet`
      Parameters:
        `columnLabel` - the column label
      Returns:
        a Time object representing the column value
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.getTime(String)`

    - #### getTimestamp

          public Timestamp getTimestamp(int columnIndex,
                                        Calendar cal)
                                 throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Retrieves the value of the indicated column in the current row as a Timestamp object.
      Specified by:
        `getTimestamp` in interface `SqlRowSet`
      Parameters:
        `columnIndex` - the column index
        `cal` - the Calendar to use in constructing the Date
      Returns:
        a Timestamp object representing the column value
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.getTimestamp(int, java.util.Calendar)`

    - #### getTimestamp

          public Timestamp getTimestamp(int columnIndex)
                                 throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Retrieves the value of the indicated column in the current row as a Timestamp object.
      Specified by:
        `getTimestamp` in interface `SqlRowSet`
      Parameters:
        `columnIndex` - the column index
      Returns:
        a Timestamp object representing the column value
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.getTimestamp(int)`

    - #### getTimestamp

          public Timestamp getTimestamp(String columnLabel,
                                        Calendar cal)
                                 throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Retrieves the value of the indicated column in the current row as a Timestamp object.
      Specified by:
        `getTimestamp` in interface `SqlRowSet`
      Parameters:
        `columnLabel` - the column label
        `cal` - the Calendar to use in constructing the Date
      Returns:
        a Timestamp object representing the column value
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.getTimestamp(String, java.util.Calendar)`

    - #### getTimestamp

          public Timestamp getTimestamp(String columnLabel)
                                 throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Retrieves the value of the indicated column in the current row as a Timestamp object.
      Specified by:
        `getTimestamp` in interface `SqlRowSet`
      Parameters:
        `columnLabel` - the column label
      Returns:
        a Timestamp object representing the column value
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.getTimestamp(String)`

    - #### absolute

          public boolean absolute(int row)
                           throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Moves the cursor to the given row number in the RowSet, just after the last row.
      Specified by:
        `absolute` in interface `SqlRowSet`
      Parameters:
        `row` - the number of the row where the cursor should move
      Returns:
        true if the cursor is on the RowSet, false otherwise
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.absolute(int)`

    - #### afterLast

          public void afterLast()
                         throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Moves the cursor to the end of this RowSet.
      Specified by:
        `afterLast` in interface `SqlRowSet`
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.afterLast()`

    - #### beforeFirst

          public void beforeFirst()
                           throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Moves the cursor to the front of this RowSet, just before the first row.
      Specified by:
        `beforeFirst` in interface `SqlRowSet`
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.beforeFirst()`

    - #### first

          public boolean first()
                        throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Moves the cursor to the first row of this RowSet.
      Specified by:
        `first` in interface `SqlRowSet`
      Returns:
        true if the cursor is on a valid row, false otherwise
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.first()`

    - #### getRow

          public int getRow()
                     throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Retrieves the current row number.
      Specified by:
        `getRow` in interface `SqlRowSet`
      Returns:
        the current row number
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.getRow()`

    - #### isAfterLast

          public boolean isAfterLast()
                              throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Retrieves whether the cursor is after the last row of this RowSet.
      Specified by:
        `isAfterLast` in interface `SqlRowSet`
      Returns:
        true if the cursor is after the last row, false otherwise
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.isAfterLast()`

    - #### isBeforeFirst

          public boolean isBeforeFirst()
                                throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Retrieves whether the cursor is after the first row of this RowSet.
      Specified by:
        `isBeforeFirst` in interface `SqlRowSet`
      Returns:
        true if the cursor is after the first row, false otherwise
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.isBeforeFirst()`

    - #### isFirst

          public boolean isFirst()
                          throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Retrieves whether the cursor is on the first row of this RowSet.
      Specified by:
        `isFirst` in interface `SqlRowSet`
      Returns:
        true if the cursor is after the first row, false otherwise
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.isFirst()`

    - #### isLast

          public boolean isLast()
                         throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Retrieves whether the cursor is on the last row of this RowSet.
      Specified by:
        `isLast` in interface `SqlRowSet`
      Returns:
        true if the cursor is after the last row, false otherwise
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.isLast()`

    - #### last

          public boolean last()
                       throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Moves the cursor to the last row of this RowSet.
      Specified by:
        `last` in interface `SqlRowSet`
      Returns:
        true if the cursor is on a valid row, false otherwise
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.last()`

    - #### next

          public boolean next()
                       throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Moves the cursor to the next row.
      Specified by:
        `next` in interface `SqlRowSet`
      Returns:
        true if the new row is valid, false if there are no more rows
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.next()`

    - #### previous

          public boolean previous()
                           throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Moves the cursor to the previous row.
      Specified by:
        `previous` in interface `SqlRowSet`
      Returns:
        true if the new row is valid, false if it is off the RowSet
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.previous()`

    - #### relative

          public boolean relative(int rows)
                           throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Moves the cursor a relative number f rows, either positive or negative.
      Specified by:
        `relative` in interface `SqlRowSet`
      Returns:
        true if the cursor is on a row, false otherwise
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.relative(int)`

    - #### wasNull

          public boolean wasNull()
                          throws InvalidResultSetAccessException

      Description copied from interface: `SqlRowSet`
      Reports whether the last column read had a value of SQL `NULL`. Note that you must first call one of the getter methods and then call the `wasNull` method.
      Specified by:
        `wasNull` in interface `SqlRowSet`
      Returns:
        true if the most recent coumn retrieved was SQL `NULL`, false otherwise
      Throws:
        `InvalidResultSetAccessException`
      See Also:
        `ResultSet.wasNull()`