FilteredRowSet (Java SE 26 & JDK 26)
Description: declaration: module: java.sql.rowset, package: javax.sql.rowset, interface: FilteredRowSet
Keywords: javax.sql.rowset.FilteredRowSet interface

# Interface FilteredRowSet

All Superinterfaces:
  `AutoCloseable, CachedRowSet, Joinable, ResultSet, RowSet, WebRowSet, Wrapper`

public interface FilteredRowSet extends WebRowSet
The standard interface that all standard implementations of `FilteredRowSet` must implement. The `FilteredRowSetImpl` class provides the reference implementation which may be extended if required. Alternatively, a vendor is free to implement its own version by implementing this interface.

## 1.0 Background

There are occasions when a `RowSet` object has a need to provide a degree of filtering to its contents. One possible solution is to provide a query language for all standard `RowSet` implementations; however, this is an impractical approach for lightweight components such as disconnected `RowSet` objects. The `FilteredRowSet` interface seeks to address this need without supplying a heavyweight query language along with the processing that such a query language would require.

A JDBC `FilteredRowSet` standard implementation implements the `RowSet` interfaces and extends the `CachedRowSet` class. The `CachedRowSet` class provides a set of protected cursor manipulation methods, which a `FilteredRowSet` implementation can override to supply filtering support.

## 2.0 Predicate Sharing

If a `FilteredRowSet` implementation is shared using the inherited `createShared` method in parent interfaces, the `Predicate` should be shared without modification by all `FilteredRowSet` instance clones.

## 3.0 Usage

By implementing a `Predicate` (see example in Predicate class JavaDoc), a `FilteredRowSet` could then be used as described below.

        FilteredRowSet frs = new FilteredRowSetImpl();
        frs.populate(rs);

        Range name = new Range("Alpha", "Bravo", "columnName");
        frs.setFilter(name);

        frs.next() // only names from "Alpha" to "Bravo" will be returned

In the example above, we initialize a `Range` object which implements the `Predicate` interface. This object expresses the following constraints: All rows outputted or modified from this `FilteredRowSet` object must fall between the values 'Alpha' and 'Bravo' both values inclusive, in the column 'columnName'. If a filter is applied to a `FilteredRowSet` object that contains no data that falls within the range of the filter, no rows are returned.

This framework allows multiple classes implementing predicates to be used in combination to achieved the required filtering result with out the need for query language processing.

## 4.0 Updating a `FilteredRowSet` Object

The predicate set on a `FilteredRowSet` object applies a criterion on all rows in a `RowSet` object to manage a subset of rows in a `RowSet` object. This criterion governs the subset of rows that are visible and also defines which rows can be modified, deleted or inserted.

Therefore, the predicate set on a `FilteredRowSet` object must be considered as bi-directional and the set criterion as the gating mechanism for all views and updates to the `FilteredRowSet` object. Any attempt to update the `FilteredRowSet` that violates the criterion will result in a `SQLException` object being thrown.

The `FilteredRowSet` range criterion can be modified by applying a new `Predicate` object to the `FilteredRowSet` instance at any time. This is possible if no additional references to the `FilteredRowSet` object are detected. A new filter has an immediate effect on criterion enforcement within the `FilteredRowSet` object, and all subsequent views and updates will be subject to similar enforcement.

## 5.0 Behavior of Rows Outside the Filter

Rows that fall outside of the filter set on a `FilteredRowSet` object cannot be modified until the filter is removed or a new filter is applied.

Furthermore, only rows that fall within the bounds of a filter will be synchronized with the data source.

Since:
  1.5

- ## Field Summary

  ### Fields declared in interface CachedRowSet

  `COMMIT_ON_ACCEPT_CHANGES`
  Modifier and Type
  Field
  Description
  `static final boolean`
  `COMMIT_ON_ACCEPT_CHANGES`
  Deprecated.
  Because this field is final (it is part of an interface), its value cannot be changed.

  ### Fields declared in interface 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`
  Modifier and Type
  Field
  Description
  `static final int`
  `CLOSE_CURSORS_AT_COMMIT`
  The constant indicating that open `ResultSet` objects with this holdability will be closed when the current transaction is committed.
  `static final int`
  `CONCUR_READ_ONLY`
  The constant indicating the concurrency mode for a `ResultSet` object that may NOT be updated.
  `static final int`
  `CONCUR_UPDATABLE`
  The constant indicating the concurrency mode for a `ResultSet` object that may be updated.
  `static final int`
  `FETCH_FORWARD`
  The constant indicating that the rows in a result set will be processed in a forward direction; first-to-last.
  `static final int`
  `FETCH_REVERSE`
  The constant indicating that the rows in a result set will be processed in a reverse direction; last-to-first.
  `static final int`
  `FETCH_UNKNOWN`
  The constant indicating that the order in which rows in a result set will be processed is unknown.
  `static final int`
  `HOLD_CURSORS_OVER_COMMIT`
  The constant indicating that open `ResultSet` objects with this holdability will remain open when the current transaction is committed.
  `static final int`
  `TYPE_FORWARD_ONLY`
  The constant indicating the type for a `ResultSet` object whose cursor may move only forward.
  `static final int`
  `TYPE_SCROLL_INSENSITIVE`
  The constant indicating the type for a `ResultSet` object that is scrollable but generally not sensitive to changes to the data that underlies the `ResultSet`.
  `static final int`
  `TYPE_SCROLL_SENSITIVE`
  The constant indicating the type for a `ResultSet` object that is scrollable and generally sensitive to changes to the data that underlies the `ResultSet`.

  ### Fields declared in interface WebRowSet

  `PUBLIC_XML_SCHEMA, SCHEMA_SYSTEM_ID`
  Modifier and Type
  Field
  Description
  `static final String`
  `PUBLIC_XML_SCHEMA`
  The public identifier for the XML Schema definition that defines the XML tags and their valid values for a `WebRowSet` implementation.
  `static final String`
  `SCHEMA_SYSTEM_ID`
  The URL for the XML Schema definition file that defines the XML tags and their valid values for a `WebRowSet` implementation.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Predicate`
  `getFilter()`
  Retrieves the active filter for this `FilteredRowSet` object.
  `void`
  `setFilter(Predicate p)`
  Applies the given `Predicate` object to this `FilteredRowSet` object.

  ### Methods declared in interface CachedRowSet

  `acceptChanges, acceptChanges, columnUpdated, columnUpdated, commit, createCopy, createCopyNoConstraints, createCopySchema, createShared, execute, getKeyColumns, getOriginal, getOriginalRow, getPageSize, getRowSetWarnings, getShowDeleted, getSyncProvider, getTableName, nextPage, populate, populate, previousPage, release, restoreOriginal, rollback, rollback, rowSetPopulated, setKeyColumns, setMetaData, setOriginalRow, setPageSize, setShowDeleted, setSyncProvider, setTableName, size, toCollection, toCollection, toCollection, undoDelete, undoInsert, undoUpdate`
  Modifier and Type
  Method
  Description
  `void`
  `acceptChanges()`
  Propagates row update, insert and delete changes made to this `CachedRowSet` object to the underlying data source.
  `void`
  `acceptChanges(Connection con)`
  Propagates all row update, insert and delete changes to the data source backing this `CachedRowSet` object using the specified `Connection` object to establish a connection to the data source.
  `boolean`
  `columnUpdated(int idx)`
  Indicates whether the designated column in the current row of this `CachedRowSet` object has been updated.
  `boolean`
  `columnUpdated(String columnName)`
  Indicates whether the designated column in the current row of this `CachedRowSet` object has been updated.
  `void`
  `commit()`
  Each `CachedRowSet` object's `SyncProvider` contains a `Connection` object from the `ResultSet` or JDBC properties passed to it's constructors.
  `CachedRowSet`
  `createCopy()`
  Creates a `RowSet` object that is a deep copy of the data in this `CachedRowSet` object.
  `CachedRowSet`
  `createCopyNoConstraints()`
  Creates a `CachedRowSet` object that is a deep copy of this `CachedRowSet` object's data but is independent of it.
  `CachedRowSet`
  `createCopySchema()`
  Creates a `CachedRowSet` object that is an empty copy of this `CachedRowSet` object.
  `RowSet`
  `createShared()`
  Returns a new `RowSet` object backed by the same data as that of this `CachedRowSet` object.
  `void`
  `execute(Connection conn)`
  Populates this `CachedRowSet` object with data, using the given connection to produce the result set from which the data will be read.
  `int[]`
  `getKeyColumns()`
  Returns an array containing one or more column numbers indicating the columns that form a key that uniquely identifies a row in this `CachedRowSet` object.
  `ResultSet`
  `getOriginal()`
  Returns a `ResultSet` object containing the original value of this `CachedRowSet` object.
  `ResultSet`
  `getOriginalRow()`
  Returns a `ResultSet` object containing the original value for the current row only of this `CachedRowSet` object.
  `int`
  `getPageSize()`
  Returns the page-size for the `CachedRowSet` object
  `RowSetWarning`
  `getRowSetWarnings()`
  Retrieves the first warning reported by calls on this `RowSet` object.
  `boolean`
  `getShowDeleted()`
  Retrieves a `boolean` indicating whether rows marked for deletion appear in the set of current rows.
  `SyncProvider`
  `getSyncProvider()`
  Retrieves the `SyncProvider` implementation for this `CachedRowSet` object.
  `String`
  `getTableName()`
  Returns an identifier for the object (table) that was used to create this `CachedRowSet` object.
  `boolean`
  `nextPage()`
  Increments the current page of the `CachedRowSet`.
  `void`
  `populate(ResultSet data)`
  Populates this `CachedRowSet` object with data from the given `ResultSet` object.
  `void`
  `populate(ResultSet rs, int startRow)`
  Populates this `CachedRowSet` object with data from the given `ResultSet` object.
  `boolean`
  `previousPage()`
  Decrements the current page of the `CachedRowSet`.
  `void`
  `release()`
  Releases the current contents of this `CachedRowSet` object and sends a `rowSetChanged` event to all registered listeners.
  `void`
  `restoreOriginal()`
  Restores this `CachedRowSet` object to its original value, that is, its value before the last set of changes.
  `void`
  `rollback()`
  Each `CachedRowSet` object's `SyncProvider` contains a `Connection` object from the original `ResultSet` or JDBC properties passed to it.
  `void`
  `rollback(Savepoint s)`
  Each `CachedRowSet` object's `SyncProvider` contains a `Connection` object from the original `ResultSet` or JDBC properties passed to it.
  `void`
  `rowSetPopulated(RowSetEvent event, int numRows)`
  Notifies registered listeners that a RowSet object in the given RowSetEvent object has populated a number of additional rows.
  `void`
  `setKeyColumns(int[] keys)`
  Sets this `CachedRowSet` object's `keyCols` field with the given array of column numbers, which forms a key for uniquely identifying a row in this `CachedRowSet` object.
  `void`
  `setMetaData(RowSetMetaData md)`
  Sets the metadata for this `CachedRowSet` object with the given `RowSetMetaData` object.
  `void`
  `setOriginalRow()`
  Sets the current row in this `CachedRowSet` object as the original row.
  `void`
  `setPageSize(int size)`
  Sets the `CachedRowSet` object's page-size.
  `void`
  `setShowDeleted(boolean b)`
  Sets the property `showDeleted` to the given `boolean` value, which determines whether rows marked for deletion appear in the set of current rows.
  `void`
  `setSyncProvider(String provider)`
  Sets the `SyncProvider` object for this `CachedRowSet` object to the one specified.
  `void`
  `setTableName(String tabName)`
  Sets the identifier for the table from which this `CachedRowSet` object was derived to the given table name.
  `int`
  `size()`
  Returns the number of rows in this `CachedRowSet` object.
  `Collection<?>`
  `toCollection()`
  Converts this `CachedRowSet` object to a `Collection` object that contains all of this `CachedRowSet` object's data.
  `Collection<?>`
  `toCollection(int column)`
  Converts the designated column in this `CachedRowSet` object to a `Collection` object.
  `Collection<?>`
  `toCollection(String column)`
  Converts the designated column in this `CachedRowSet` object to a `Collection` object.
  `void`
  `undoDelete()`
  Cancels the deletion of the current row and notifies listeners that a row has changed.
  `void`
  `undoInsert()`
  Immediately removes the current row from this `CachedRowSet` object if the row has been inserted, and also notifies listeners that a row has changed.
  `void`
  `undoUpdate()`
  Immediately reverses the last update operation if the row has been modified.

  ### Methods declared in interface Joinable

  `getMatchColumnIndexes, getMatchColumnNames, setMatchColumn, setMatchColumn, setMatchColumn, setMatchColumn, unsetMatchColumn, unsetMatchColumn, unsetMatchColumn, unsetMatchColumn`
  Modifier and Type
  Method
  Description
  `int[]`
  `getMatchColumnIndexes()`
  Retrieves the indexes of the match columns that were set for this `RowSet` object with the method `setMatchColumn(int[] columnIdxes)`.
  `String[]`
  `getMatchColumnNames()`
  Retrieves the names of the match columns that were set for this `RowSet` object with the method `setMatchColumn(String [] columnNames)`.
  `void`
  `setMatchColumn(int columnIdx)`
  Sets the designated column as the match column for this `RowSet` object.
  `void`
  `setMatchColumn(int[] columnIdxes)`
  Sets the designated columns as the match column for this `RowSet` object.
  `void`
  `setMatchColumn(String columnName)`
  Sets the designated column as the match column for this `RowSet` object.
  `void`
  `setMatchColumn(String[] columnNames)`
  Sets the designated columns as the match column for this `RowSet` object.
  `void`
  `unsetMatchColumn(int columnIdx)`
  Unsets the designated column as the match column for this `RowSet` object.
  `void`
  `unsetMatchColumn(int[] columnIdxes)`
  Unsets the designated columns as the match column for this `RowSet` object.
  `void`
  `unsetMatchColumn(String columnName)`
  Unsets the designated column as the match column for this `RowSet` object.
  `void`
  `unsetMatchColumn(String[] columnName)`
  Unsets the designated columns as the match columns for this `RowSet` object.

  ### Methods declared in interface ResultSet

  `absolute, afterLast, beforeFirst, cancelRowUpdates, clearWarnings, close, deleteRow, findColumn, first, getArray, getArray, getAsciiStream, getAsciiStream, getBigDecimal, getBigDecimal, getBigDecimal, getBigDecimal, getBinaryStream, getBinaryStream, getBlob, getBlob, getBoolean, getBoolean, getByte, getByte, getBytes, getBytes, getCharacterStream, getCharacterStream, getClob, getClob, getConcurrency, getCursorName, getDate, getDate, getDate, getDate, getDouble, getDouble, getFetchDirection, getFetchSize, getFloat, getFloat, getHoldability, getInt, getInt, getLong, getLong, getMetaData, getNCharacterStream, getNCharacterStream, getNClob, getNClob, getNString, getNString, getObject, getObject, getObject, getObject, getObject, getObject, getRef, getRef, getRow, getRowId, getRowId, getShort, getShort, getSQLXML, getSQLXML, getStatement, getString, getString, getTime, getTime, getTime, getTime, getTimestamp, getTimestamp, getTimestamp, getTimestamp, getType, getUnicodeStream, getUnicodeStream, getURL, getURL, getWarnings, insertRow, isAfterLast, isBeforeFirst, isClosed, isFirst, isLast, last, moveToCurrentRow, moveToInsertRow, next, previous, refreshRow, relative, rowDeleted, rowInserted, rowUpdated, setFetchDirection, setFetchSize, updateArray, updateArray, updateAsciiStream, updateAsciiStream, updateAsciiStream, updateAsciiStream, updateAsciiStream, updateAsciiStream, updateBigDecimal, updateBigDecimal, updateBinaryStream, updateBinaryStream, updateBinaryStream, updateBinaryStream, updateBinaryStream, updateBinaryStream, updateBlob, updateBlob, updateBlob, updateBlob, updateBlob, updateBlob, updateBoolean, updateBoolean, updateByte, updateByte, updateBytes, updateBytes, updateCharacterStream, updateCharacterStream, updateCharacterStream, updateCharacterStream, updateCharacterStream, updateCharacterStream, updateClob, updateClob, updateClob, updateClob, updateClob, updateClob, updateDate, updateDate, updateDouble, updateDouble, updateFloat, updateFloat, updateInt, updateInt, updateLong, updateLong, updateNCharacterStream, updateNCharacterStream, updateNCharacterStream, updateNCharacterStream, updateNClob, updateNClob, updateNClob, updateNClob, updateNClob, updateNClob, updateNString, updateNString, updateNull, updateNull, updateObject, updateObject, updateObject, updateObject, updateObject, updateObject, updateObject, updateObject, updateRef, updateRef, updateRow, updateRowId, updateRowId, updateShort, updateShort, updateSQLXML, updateSQLXML, updateString, updateString, updateTime, updateTime, updateTimestamp, updateTimestamp, wasNull`
  Modifier and Type
  Method
  Description
  `boolean`
  `absolute(int row)`
  Moves the cursor to the given row number in this `ResultSet` object.
  `void`
  `afterLast()`
  Moves the cursor to the end of this `ResultSet` object, just after the last row.
  `void`
  `beforeFirst()`
  Moves the cursor to the front of this `ResultSet` object, just before the first row.
  `void`
  `cancelRowUpdates()`
  Cancels the updates made to the current row in this `ResultSet` object.
  `void`
  `clearWarnings()`
  Clears all warnings reported on this `ResultSet` object.
  `void`
  `close()`
  Releases this `ResultSet` object's database and JDBC resources immediately instead of waiting for this to happen when it is automatically closed.
  `void`
  `deleteRow()`
  Deletes the current row from this `ResultSet` object and from the underlying database.
  `int`
  `findColumn(String columnLabel)`
  Maps the given `ResultSet` column label to its `ResultSet` column index.
  `boolean`
  `first()`
  Moves the cursor to the first row in this `ResultSet` object.
  `Array`
  `getArray(int columnIndex)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as an `Array` object in the Java programming language.
  `Array`
  `getArray(String columnLabel)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as an `Array` object in the Java programming language.
  `InputStream`
  `getAsciiStream(int columnIndex)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a stream of ASCII characters.
  `InputStream`
  `getAsciiStream(String columnLabel)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a stream of ASCII characters.
  `BigDecimal`
  `getBigDecimal(int columnIndex)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `java.math.BigDecimal` with full precision.
  `BigDecimal`
  `getBigDecimal(int columnIndex, int scale)`
  Deprecated.
  Use `getBigDecimal(int columnIndex)` or `getBigDecimal(String columnLabel)`
  `BigDecimal`
  `getBigDecimal(String columnLabel)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `java.math.BigDecimal` with full precision.
  `BigDecimal`
  `getBigDecimal(String columnLabel, int scale)`
  Deprecated.
  Use `getBigDecimal(int columnIndex)` or `getBigDecimal(String columnLabel)`
  `InputStream`
  `getBinaryStream(int columnIndex)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a stream of uninterpreted bytes.
  `InputStream`
  `getBinaryStream(String columnLabel)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a stream of uninterpreted `byte`s.
  `Blob`
  `getBlob(int columnIndex)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `Blob` object in the Java programming language.
  `Blob`
  `getBlob(String columnLabel)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `Blob` object in the Java programming language.
  `boolean`
  `getBoolean(int columnIndex)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `boolean` in the Java programming language.
  `boolean`
  `getBoolean(String columnLabel)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `boolean` in the Java programming language.
  `byte`
  `getByte(int columnIndex)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `byte` in the Java programming language.
  `byte`
  `getByte(String columnLabel)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `byte` in the Java programming language.
  `byte[]`
  `getBytes(int columnIndex)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `byte` array in the Java programming language.
  `byte[]`
  `getBytes(String columnLabel)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `byte` array in the Java programming language.
  `Reader`
  `getCharacterStream(int columnIndex)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `java.io.Reader` object.
  `Reader`
  `getCharacterStream(String columnLabel)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `java.io.Reader` object.
  `Clob`
  `getClob(int columnIndex)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `Clob` object in the Java programming language.
  `Clob`
  `getClob(String columnLabel)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `Clob` object in the Java programming language.
  `int`
  `getConcurrency()`
  Retrieves the concurrency mode of this `ResultSet` object.
  `String`
  `getCursorName()`
  Retrieves the name of the SQL cursor used by this `ResultSet` object.
  `Date`
  `getDate(int columnIndex)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `java.sql.Date` object in the Java programming language.
  `Date`
  `getDate(int columnIndex, Calendar cal)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `java.sql.Date` object in the Java programming language.
  `Date`
  `getDate(String columnLabel)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `java.sql.Date` object in the Java programming language.
  `Date`
  `getDate(String columnLabel, Calendar cal)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `java.sql.Date` object in the Java programming language.
  `double`
  `getDouble(int columnIndex)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `double` in the Java programming language.
  `double`
  `getDouble(String columnLabel)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `double` in the Java programming language.
  `int`
  `getFetchDirection()`
  Retrieves the fetch direction for this `ResultSet` object.
  `int`
  `getFetchSize()`
  Retrieves the fetch size for this `ResultSet` object.
  `float`
  `getFloat(int columnIndex)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `float` in the Java programming language.
  `float`
  `getFloat(String columnLabel)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `float` in the Java programming language.
  `int`
  `getHoldability()`
  Retrieves the holdability of this `ResultSet` object
  `int`
  `getInt(int columnIndex)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as an `int` in the Java programming language.
  `int`
  `getInt(String columnLabel)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as an `int` in the Java programming language.
  `long`
  `getLong(int columnIndex)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `long` in the Java programming language.
  `long`
  `getLong(String columnLabel)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `long` in the Java programming language.
  `ResultSetMetaData`
  `getMetaData()`
  Retrieves the number, types and properties of this `ResultSet` object's columns.
  `Reader`
  `getNCharacterStream(int columnIndex)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `java.io.Reader` object.
  `Reader`
  `getNCharacterStream(String columnLabel)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `java.io.Reader` object.
  `NClob`
  `getNClob(int columnIndex)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `NClob` object in the Java programming language.
  `NClob`
  `getNClob(String columnLabel)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `NClob` object in the Java programming language.
  `String`
  `getNString(int columnIndex)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `String` in the Java programming language.
  `String`
  `getNString(String columnLabel)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `String` in the Java programming language.
  `Object`
  `getObject(int columnIndex)`
  Gets the value of the designated column in the current row of this `ResultSet` object as an `Object` in the Java programming language.
  `<T> T`
  `getObject(int columnIndex, Class<T> type)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object and will convert from the SQL type of the column to the requested Java data type, if the conversion is supported.
  `Object`
  `getObject(int columnIndex, Map<String,Class<?>> map)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as an `Object` in the Java programming language.
  `Object`
  `getObject(String columnLabel)`
  Gets the value of the designated column in the current row of this `ResultSet` object as an `Object` in the Java programming language.
  `<T> T`
  `getObject(String columnLabel, Class<T> type)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object and will convert from the SQL type of the column to the requested Java data type, if the conversion is supported.
  `Object`
  `getObject(String columnLabel, Map<String,Class<?>> map)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as an `Object` in the Java programming language.
  `Ref`
  `getRef(int columnIndex)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `Ref` object in the Java programming language.
  `Ref`
  `getRef(String columnLabel)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `Ref` object in the Java programming language.
  `int`
  `getRow()`
  Retrieves the current row number.
  `RowId`
  `getRowId(int columnIndex)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `java.sql.RowId` object in the Java programming language.
  `RowId`
  `getRowId(String columnLabel)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `java.sql.RowId` object in the Java programming language.
  `short`
  `getShort(int columnIndex)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `short` in the Java programming language.
  `short`
  `getShort(String columnLabel)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `short` in the Java programming language.
  `SQLXML`
  `getSQLXML(int columnIndex)`
  Retrieves the value of the designated column in the current row of this `ResultSet` as a `java.sql.SQLXML` object in the Java programming language.
  `SQLXML`
  `getSQLXML(String columnLabel)`
  Retrieves the value of the designated column in the current row of this `ResultSet` as a `java.sql.SQLXML` object in the Java programming language.
  `Statement`
  `getStatement()`
  Retrieves the `Statement` object that produced this `ResultSet` object.
  `String`
  `getString(int columnIndex)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `String` in the Java programming language.
  `String`
  `getString(String columnLabel)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `String` in the Java programming language.
  `Time`
  `getTime(int columnIndex)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `java.sql.Time` object in the Java programming language.
  `Time`
  `getTime(int columnIndex, Calendar cal)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `java.sql.Time` object in the Java programming language.
  `Time`
  `getTime(String columnLabel)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `java.sql.Time` object in the Java programming language.
  `Time`
  `getTime(String columnLabel, Calendar cal)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `java.sql.Time` object in the Java programming language.
  `Timestamp`
  `getTimestamp(int columnIndex)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `java.sql.Timestamp` object in the Java programming language.
  `Timestamp`
  `getTimestamp(int columnIndex, Calendar cal)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `java.sql.Timestamp` object in the Java programming language.
  `Timestamp`
  `getTimestamp(String columnLabel)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `java.sql.Timestamp` object in the Java programming language.
  `Timestamp`
  `getTimestamp(String columnLabel, Calendar cal)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `java.sql.Timestamp` object in the Java programming language.
  `int`
  `getType()`
  Retrieves the type of this `ResultSet` object.
  `InputStream`
  `getUnicodeStream(int columnIndex)`
  Deprecated.
  use `getCharacterStream` in place of `getUnicodeStream`
  `InputStream`
  `getUnicodeStream(String columnLabel)`
  Deprecated.
  use `getCharacterStream` instead
  `URL`
  `getURL(int columnIndex)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `java.net.URL` object in the Java programming language.
  `URL`
  `getURL(String columnLabel)`
  Retrieves the value of the designated column in the current row of this `ResultSet` object as a `java.net.URL` object in the Java programming language.
  `SQLWarning`
  `getWarnings()`
  Retrieves the first warning reported by calls on this `ResultSet` object.
  `void`
  `insertRow()`
  Inserts the contents of the insert row into this `ResultSet` object and into the database.
  `boolean`
  `isAfterLast()`
  Retrieves whether the cursor is after the last row in this `ResultSet` object.
  `boolean`
  `isBeforeFirst()`
  Retrieves whether the cursor is before the first row in this `ResultSet` object.
  `boolean`
  `isClosed()`
  Retrieves whether this `ResultSet` object has been closed.
  `boolean`
  `isFirst()`
  Retrieves whether the cursor is on the first row of this `ResultSet` object.
  `boolean`
  `isLast()`
  Retrieves whether the cursor is on the last row of this `ResultSet` object.
  `boolean`
  `last()`
  Moves the cursor to the last row in this `ResultSet` object.
  `void`
  `moveToCurrentRow()`
  Moves the cursor to the remembered cursor position, usually the current row.
  `void`
  `moveToInsertRow()`
  Moves the cursor to the insert row.
  `boolean`
  `next()`
  Moves the cursor forward one row from its current position.
  `boolean`
  `previous()`
  Moves the cursor to the previous row in this `ResultSet` object.
  `void`
  `refreshRow()`
  Refreshes the current row with its most recent value in the database.
  `boolean`
  `relative(int rows)`
  Moves the cursor a relative number of rows, either positive or negative.
  `boolean`
  `rowDeleted()`
  Retrieves whether a row has been deleted.
  `boolean`
  `rowInserted()`
  Retrieves whether the current row has had an insertion.
  `boolean`
  `rowUpdated()`
  Retrieves whether the current row has been updated.
  `void`
  `setFetchDirection(int direction)`
  Gives a hint as to the direction in which the rows in this `ResultSet` object will be processed.
  `void`
  `setFetchSize(int rows)`
  Gives the JDBC driver a hint as to the number of rows that should be fetched from the database when more rows are needed for this `ResultSet` object.
  `void`
  `updateArray(int columnIndex, Array x)`
  Updates the designated column with a `java.sql.Array` value.
  `void`
  `updateArray(String columnLabel, Array x)`
  Updates the designated column with a `java.sql.Array` value.
  `void`
  `updateAsciiStream(int columnIndex, InputStream x)`
  Updates the designated column with an ascii stream value.
  `void`
  `updateAsciiStream(int columnIndex, InputStream x, int length)`
  Updates the designated column with an ascii stream value, which will have the specified number of bytes.
  `void`
  `updateAsciiStream(int columnIndex, InputStream x, long length)`
  Updates the designated column with an ascii stream value, which will have the specified number of bytes.
  `void`
  `updateAsciiStream(String columnLabel, InputStream x)`
  Updates the designated column with an ascii stream value.
  `void`
  `updateAsciiStream(String columnLabel, InputStream x, int length)`
  Updates the designated column with an ascii stream value, which will have the specified number of bytes.
  `void`
  `updateAsciiStream(String columnLabel, InputStream x, long length)`
  Updates the designated column with an ascii stream value, which will have the specified number of bytes.
  `void`
  `updateBigDecimal(int columnIndex, BigDecimal x)`
  Updates the designated column with a `java.math.BigDecimal` value.
  `void`
  `updateBigDecimal(String columnLabel, BigDecimal x)`
  Updates the designated column with a `java.sql.BigDecimal` value.
  `void`
  `updateBinaryStream(int columnIndex, InputStream x)`
  Updates the designated column with a binary stream value.
  `void`
  `updateBinaryStream(int columnIndex, InputStream x, int length)`
  Updates the designated column with a binary stream value, which will have the specified number of bytes.
  `void`
  `updateBinaryStream(int columnIndex, InputStream x, long length)`
  Updates the designated column with a binary stream value, which will have the specified number of bytes.
  `void`
  `updateBinaryStream(String columnLabel, InputStream x)`
  Updates the designated column with a binary stream value.
  `void`
  `updateBinaryStream(String columnLabel, InputStream x, int length)`
  Updates the designated column with a binary stream value, which will have the specified number of bytes.
  `void`
  `updateBinaryStream(String columnLabel, InputStream x, long length)`
  Updates the designated column with a binary stream value, which will have the specified number of bytes.
  `void`
  `updateBlob(int columnIndex, InputStream inputStream)`
  Updates the designated column using the given input stream.
  `void`
  `updateBlob(int columnIndex, InputStream inputStream, long length)`
  Updates the designated column using the given input stream, which will have the specified number of bytes.
  `void`
  `updateBlob(int columnIndex, Blob x)`
  Updates the designated column with a `java.sql.Blob` value.
  `void`
  `updateBlob(String columnLabel, InputStream inputStream)`
  Updates the designated column using the given input stream.
  `void`
  `updateBlob(String columnLabel, InputStream inputStream, long length)`
  Updates the designated column using the given input stream, which will have the specified number of bytes.
  `void`
  `updateBlob(String columnLabel, Blob x)`
  Updates the designated column with a `java.sql.Blob` value.
  `void`
  `updateBoolean(int columnIndex, boolean x)`
  Updates the designated column with a `boolean` value.
  `void`
  `updateBoolean(String columnLabel, boolean x)`
  Updates the designated column with a `boolean` value.
  `void`
  `updateByte(int columnIndex, byte x)`
  Updates the designated column with a `byte` value.
  `void`
  `updateByte(String columnLabel, byte x)`
  Updates the designated column with a `byte` value.
  `void`
  `updateBytes(int columnIndex, byte[] x)`
  Updates the designated column with a `byte` array value.
  `void`
  `updateBytes(String columnLabel, byte[] x)`
  Updates the designated column with a byte array value.
  `void`
  `updateCharacterStream(int columnIndex, Reader x)`
  Updates the designated column with a character stream value.
  `void`
  `updateCharacterStream(int columnIndex, Reader x, int length)`
  Updates the designated column with a character stream value, which will have the specified number of bytes.
  `void`
  `updateCharacterStream(int columnIndex, Reader x, long length)`
  Updates the designated column with a character stream value, which will have the specified number of bytes.
  `void`
  `updateCharacterStream(String columnLabel, Reader reader)`
  Updates the designated column with a character stream value.
  `void`
  `updateCharacterStream(String columnLabel, Reader reader, int length)`
  Updates the designated column with a character stream value, which will have the specified number of bytes.
  `void`
  `updateCharacterStream(String columnLabel, Reader reader, long length)`
  Updates the designated column with a character stream value, which will have the specified number of bytes.
  `void`
  `updateClob(int columnIndex, Reader reader)`
  Updates the designated column using the given `Reader` object.
  `void`
  `updateClob(int columnIndex, Reader reader, long length)`
  Updates the designated column using the given `Reader` object, which is the given number of characters long.
  `void`
  `updateClob(int columnIndex, Clob x)`
  Updates the designated column with a `java.sql.Clob` value.
  `void`
  `updateClob(String columnLabel, Reader reader)`
  Updates the designated column using the given `Reader` object.
  `void`
  `updateClob(String columnLabel, Reader reader, long length)`
  Updates the designated column using the given `Reader` object, which is the given number of characters long.
  `void`
  `updateClob(String columnLabel, Clob x)`
  Updates the designated column with a `java.sql.Clob` value.
  `void`
  `updateDate(int columnIndex, Date x)`
  Updates the designated column with a `java.sql.Date` value.
  `void`
  `updateDate(String columnLabel, Date x)`
  Updates the designated column with a `java.sql.Date` value.
  `void`
  `updateDouble(int columnIndex, double x)`
  Updates the designated column with a `double` value.
  `void`
  `updateDouble(String columnLabel, double x)`
  Updates the designated column with a `double` value.
  `void`
  `updateFloat(int columnIndex, float x)`
  Updates the designated column with a `float` value.
  `void`
  `updateFloat(String columnLabel, float x)`
  Updates the designated column with a `float` value.
  `void`
  `updateInt(int columnIndex, int x)`
  Updates the designated column with an `int` value.
  `void`
  `updateInt(String columnLabel, int x)`
  Updates the designated column with an `int` value.
  `void`
  `updateLong(int columnIndex, long x)`
  Updates the designated column with a `long` value.
  `void`
  `updateLong(String columnLabel, long x)`
  Updates the designated column with a `long` value.
  `void`
  `updateNCharacterStream(int columnIndex, Reader x)`
  Updates the designated column with a character stream value.
  `void`
  `updateNCharacterStream(int columnIndex, Reader x, long length)`
  Updates the designated column with a character stream value, which will have the specified number of bytes.
  `void`
  `updateNCharacterStream(String columnLabel, Reader reader)`
  Updates the designated column with a character stream value.
  `void`
  `updateNCharacterStream(String columnLabel, Reader reader, long length)`
  Updates the designated column with a character stream value, which will have the specified number of bytes.
  `void`
  `updateNClob(int columnIndex, Reader reader)`
  Updates the designated column using the given `Reader` The data will be read from the stream as needed until end-of-stream is reached.
  `void`
  `updateNClob(int columnIndex, Reader reader, long length)`
  Updates the designated column using the given `Reader` object, which is the given number of characters long.
  `void`
  `updateNClob(int columnIndex, NClob nClob)`
  Updates the designated column with a `java.sql.NClob` value.
  `void`
  `updateNClob(String columnLabel, Reader reader)`
  Updates the designated column using the given `Reader` object.
  `void`
  `updateNClob(String columnLabel, Reader reader, long length)`
  Updates the designated column using the given `Reader` object, which is the given number of characters long.
  `void`
  `updateNClob(String columnLabel, NClob nClob)`
  Updates the designated column with a `java.sql.NClob` value.
  `void`
  `updateNString(int columnIndex, String nString)`
  Updates the designated column with a `String` value.
  `void`
  `updateNString(String columnLabel, String nString)`
  Updates the designated column with a `String` value.
  `void`
  `updateNull(int columnIndex)`
  Updates the designated column with a `null` value.
  `void`
  `updateNull(String columnLabel)`
  Updates the designated column with a `null` value.
  `void`
  `updateObject(int columnIndex, Object x)`
  Updates the designated column with an `Object` value.
  `void`
  `updateObject(int columnIndex, Object x, int scaleOrLength)`
  Updates the designated column with an `Object` value.
  `default void`
  `updateObject(int columnIndex, Object x, SQLType targetSqlType)`
  Updates the designated column with an `Object` value.
  `default void`
  `updateObject(int columnIndex, Object x, SQLType targetSqlType, int scaleOrLength)`
  Updates the designated column with an `Object` value.
  `void`
  `updateObject(String columnLabel, Object x)`
  Updates the designated column with an `Object` value.
  `void`
  `updateObject(String columnLabel, Object x, int scaleOrLength)`
  Updates the designated column with an `Object` value.
  `default void`
  `updateObject(String columnLabel, Object x, SQLType targetSqlType)`
  Updates the designated column with an `Object` value.
  `default void`
  `updateObject(String columnLabel, Object x, SQLType targetSqlType, int scaleOrLength)`
  Updates the designated column with an `Object` value.
  `void`
  `updateRef(int columnIndex, Ref x)`
  Updates the designated column with a `java.sql.Ref` value.
  `void`
  `updateRef(String columnLabel, Ref x)`
  Updates the designated column with a `java.sql.Ref` value.
  `void`
  `updateRow()`
  Updates the underlying database with the new contents of the current row of this `ResultSet` object.
  `void`
  `updateRowId(int columnIndex, RowId x)`
  Updates the designated column with a `RowId` value.
  `void`
  `updateRowId(String columnLabel, RowId x)`
  Updates the designated column with a `RowId` value.
  `void`
  `updateShort(int columnIndex, short x)`
  Updates the designated column with a `short` value.
  `void`
  `updateShort(String columnLabel, short x)`
  Updates the designated column with a `short` value.
  `void`
  `updateSQLXML(int columnIndex, SQLXML xmlObject)`
  Updates the designated column with a `java.sql.SQLXML` value.
  `void`
  `updateSQLXML(String columnLabel, SQLXML xmlObject)`
  Updates the designated column with a `java.sql.SQLXML` value.
  `void`
  `updateString(int columnIndex, String x)`
  Updates the designated column with a `String` value.
  `void`
  `updateString(String columnLabel, String x)`
  Updates the designated column with a `String` value.
  `void`
  `updateTime(int columnIndex, Time x)`
  Updates the designated column with a `java.sql.Time` value.
  `void`
  `updateTime(String columnLabel, Time x)`
  Updates the designated column with a `java.sql.Time` value.
  `void`
  `updateTimestamp(int columnIndex, Timestamp x)`
  Updates the designated column with a `java.sql.Timestamp` value.
  `void`
  `updateTimestamp(String columnLabel, Timestamp x)`
  Updates the designated column with a `java.sql.Timestamp` value.
  `boolean`
  `wasNull()`
  Reports whether the last column read had a value of SQL `NULL`.

  ### Methods declared in interface RowSet

  `addRowSetListener, clearParameters, execute, getCommand, getDataSourceName, getEscapeProcessing, getMaxFieldSize, getMaxRows, getPassword, getQueryTimeout, getTransactionIsolation, getTypeMap, getUrl, getUsername, isReadOnly, removeRowSetListener, setArray, setAsciiStream, setAsciiStream, setAsciiStream, setAsciiStream, setBigDecimal, setBigDecimal, setBinaryStream, setBinaryStream, setBinaryStream, setBinaryStream, setBlob, setBlob, setBlob, setBlob, setBlob, setBlob, setBoolean, setBoolean, setByte, setByte, setBytes, setBytes, setCharacterStream, setCharacterStream, setCharacterStream, setCharacterStream, setClob, setClob, setClob, setClob, setClob, setClob, setCommand, setConcurrency, setDataSourceName, setDate, setDate, setDate, setDate, setDouble, setDouble, setEscapeProcessing, setFloat, setFloat, setInt, setInt, setLong, setLong, setMaxFieldSize, setMaxRows, setNCharacterStream, setNCharacterStream, setNCharacterStream, setNCharacterStream, setNClob, setNClob, setNClob, setNClob, setNClob, setNClob, setNString, setNString, setNull, setNull, setNull, setNull, setObject, setObject, setObject, setObject, setObject, setObject, setPassword, setQueryTimeout, setReadOnly, setRef, setRowId, setRowId, setShort, setShort, setSQLXML, setSQLXML, setString, setString, setTime, setTime, setTime, setTime, setTimestamp, setTimestamp, setTimestamp, setTimestamp, setTransactionIsolation, setType, setTypeMap, setUrl, setURL, setUsername`
  Modifier and Type
  Method
  Description
  `void`
  `addRowSetListener(RowSetListener listener)`
  Registers the given listener so that it will be notified of events that occur on this `RowSet` object.
  `void`
  `clearParameters()`
  Clears the parameters set for this `RowSet` object's command.
  `void`
  `execute()`
  Fills this `RowSet` object with data.
  `String`
  `getCommand()`
  Retrieves this `RowSet` object's command property.
  `String`
  `getDataSourceName()`
  Retrieves the logical name that identifies the data source for this `RowSet` object.
  `boolean`
  `getEscapeProcessing()`
  Retrieves whether escape processing is enabled for this `RowSet` object.
  `int`
  `getMaxFieldSize()`
  Retrieves the maximum number of bytes that may be returned for certain column values.
  `int`
  `getMaxRows()`
  Retrieves the maximum number of rows that this `RowSet` object can contain.
  `String`
  `getPassword()`
  Retrieves the password used to create a database connection.
  `int`
  `getQueryTimeout()`
  Retrieves the maximum number of seconds the driver will wait for a statement to execute.
  `int`
  `getTransactionIsolation()`
  Retrieves the transaction isolation level set for this `RowSet` object.
  `Map<String,Class<?>>`
  `getTypeMap()`
  Retrieves the `Map` object associated with this `RowSet` object, which specifies the custom mapping of SQL user-defined types, if any.
  `String`
  `getUrl()`
  Retrieves the url property this `RowSet` object will use to create a connection if it uses the `DriverManager` instead of a `DataSource` object to establish the connection.
  `String`
  `getUsername()`
  Retrieves the username used to create a database connection for this `RowSet` object.
  `boolean`
  `isReadOnly()`
  Retrieves whether this `RowSet` object is read-only.
  `void`
  `removeRowSetListener(RowSetListener listener)`
  Removes the specified listener from the list of components that will be notified when an event occurs on this `RowSet` object.
  `void`
  `setArray(int i, Array x)`
  Sets the designated parameter in this `RowSet` object's command with the given `Array` value.
  `void`
  `setAsciiStream(int parameterIndex, InputStream x)`
  Sets the designated parameter in this `RowSet` object's command to the given input stream.
  `void`
  `setAsciiStream(int parameterIndex, InputStream x, int length)`
  Sets the designated parameter in this `RowSet` object's command to the given `java.io.InputStream` value.
  `void`
  `setAsciiStream(String parameterName, InputStream x)`
  Sets the designated parameter to the given input stream.
  `void`
  `setAsciiStream(String parameterName, InputStream x, int length)`
  Sets the designated parameter to the given input stream, which will have the specified number of bytes.
  `void`
  `setBigDecimal(int parameterIndex, BigDecimal x)`
  Sets the designated parameter in this `RowSet` object's command to the given `java.math.BigDecimal` value.
  `void`
  `setBigDecimal(String parameterName, BigDecimal x)`
  Sets the designated parameter to the given `java.math.BigDecimal` value.
  `void`
  `setBinaryStream(int parameterIndex, InputStream x)`
  Sets the designated parameter in this `RowSet` object's command to the given input stream.
  `void`
  `setBinaryStream(int parameterIndex, InputStream x, int length)`
  Sets the designated parameter in this `RowSet` object's command to the given `java.io.InputStream` value.
  `void`
  `setBinaryStream(String parameterName, InputStream x)`
  Sets the designated parameter to the given input stream.
  `void`
  `setBinaryStream(String parameterName, InputStream x, int length)`
  Sets the designated parameter to the given input stream, which will have the specified number of bytes.
  `void`
  `setBlob(int parameterIndex, InputStream inputStream)`
  Sets the designated parameter to a `InputStream` object.
  `void`
  `setBlob(int parameterIndex, InputStream inputStream, long length)`
  Sets the designated parameter to a `InputStream` object.
  `void`
  `setBlob(int i, Blob x)`
  Sets the designated parameter in this `RowSet` object's command with the given `Blob` value.
  `void`
  `setBlob(String parameterName, InputStream inputStream)`
  Sets the designated parameter to a `InputStream` object.
  `void`
  `setBlob(String parameterName, InputStream inputStream, long length)`
  Sets the designated parameter to a `InputStream` object.
  `void`
  `setBlob(String parameterName, Blob x)`
  Sets the designated parameter to the given `java.sql.Blob` object.
  `void`
  `setBoolean(int parameterIndex, boolean x)`
  Sets the designated parameter in this `RowSet` object's command to the given Java `boolean` value.
  `void`
  `setBoolean(String parameterName, boolean x)`
  Sets the designated parameter to the given Java `boolean` value.
  `void`
  `setByte(int parameterIndex, byte x)`
  Sets the designated parameter in this `RowSet` object's command to the given Java `byte` value.
  `void`
  `setByte(String parameterName, byte x)`
  Sets the designated parameter to the given Java `byte` value.
  `void`
  `setBytes(int parameterIndex, byte[] x)`
  Sets the designated parameter in this `RowSet` object's command to the given Java array of `byte` values.
  `void`
  `setBytes(String parameterName, byte[] x)`
  Sets the designated parameter to the given Java array of bytes.
  `void`
  `setCharacterStream(int parameterIndex, Reader reader)`
  Sets the designated parameter in this `RowSet` object's command to the given `Reader` object.
  `void`
  `setCharacterStream(int parameterIndex, Reader reader, int length)`
  Sets the designated parameter in this `RowSet` object's command to the given `java.io.Reader` value.
  `void`
  `setCharacterStream(String parameterName, Reader reader)`
  Sets the designated parameter to the given `Reader` object.
  `void`
  `setCharacterStream(String parameterName, Reader reader, int length)`
  Sets the designated parameter to the given `Reader` object, which is the given number of characters long.
  `void`
  `setClob(int parameterIndex, Reader reader)`
  Sets the designated parameter to a `Reader` object.
  `void`
  `setClob(int parameterIndex, Reader reader, long length)`
  Sets the designated parameter to a `Reader` object.
  `void`
  `setClob(int i, Clob x)`
  Sets the designated parameter in this `RowSet` object's command with the given `Clob` value.
  `void`
  `setClob(String parameterName, Reader reader)`
  Sets the designated parameter to a `Reader` object.
  `void`
  `setClob(String parameterName, Reader reader, long length)`
  Sets the designated parameter to a `Reader` object.
  `void`
  `setClob(String parameterName, Clob x)`
  Sets the designated parameter to the given `java.sql.Clob` object.
  `void`
  `setCommand(String cmd)`
  Sets this `RowSet` object's command property to the given SQL query.
  `void`
  `setConcurrency(int concurrency)`
  Sets the concurrency of this `RowSet` object to the given concurrency level.
  `void`
  `setDataSourceName(String name)`
  Sets the data source name property for this `RowSet` object to the given `String`.
  `void`
  `setDate(int parameterIndex, Date x)`
  Sets the designated parameter in this `RowSet` object's command to the given `java.sql.Date` value.
  `void`
  `setDate(int parameterIndex, Date x, Calendar cal)`
  Sets the designated parameter in this `RowSet` object's command with the given `java.sql.Date` value.
  `void`
  `setDate(String parameterName, Date x)`
  Sets the designated parameter to the given `java.sql.Date` value using the default time zone of the virtual machine that is running the application.
  `void`
  `setDate(String parameterName, Date x, Calendar cal)`
  Sets the designated parameter to the given `java.sql.Date` value, using the given `Calendar` object.
  `void`
  `setDouble(int parameterIndex, double x)`
  Sets the designated parameter in this `RowSet` object's command to the given Java `double` value.
  `void`
  `setDouble(String parameterName, double x)`
  Sets the designated parameter to the given Java `double` value.
  `void`
  `setEscapeProcessing(boolean enable)`
  Sets escape processing for this `RowSet` object on or off.
  `void`
  `setFloat(int parameterIndex, float x)`
  Sets the designated parameter in this `RowSet` object's command to the given Java `float` value.
  `void`
  `setFloat(String parameterName, float x)`
  Sets the designated parameter to the given Java `float` value.
  `void`
  `setInt(int parameterIndex, int x)`
  Sets the designated parameter in this `RowSet` object's command to the given Java `int` value.
  `void`
  `setInt(String parameterName, int x)`
  Sets the designated parameter to the given Java `int` value.
  `void`
  `setLong(int parameterIndex, long x)`
  Sets the designated parameter in this `RowSet` object's command to the given Java `long` value.
  `void`
  `setLong(String parameterName, long x)`
  Sets the designated parameter to the given Java `long` value.
  `void`
  `setMaxFieldSize(int max)`
  Sets the maximum number of bytes that can be returned for a column value to the given number of bytes.
  `void`
  `setMaxRows(int max)`
  Sets the maximum number of rows that this `RowSet` object can contain to the specified number.
  `void`
  `setNCharacterStream(int parameterIndex, Reader value)`
  Sets the designated parameter in this `RowSet` object's command to a `Reader` object.
  `void`
  `setNCharacterStream(int parameterIndex, Reader value, long length)`
  Sets the designated parameter to a `Reader` object.
  `void`
  `setNCharacterStream(String parameterName, Reader value)`
  Sets the designated parameter to a `Reader` object.
  `void`
  `setNCharacterStream(String parameterName, Reader value, long length)`
  Sets the designated parameter to a `Reader` object.
  `void`
  `setNClob(int parameterIndex, Reader reader)`
  Sets the designated parameter to a `Reader` object.
  `void`
  `setNClob(int parameterIndex, Reader reader, long length)`
  Sets the designated parameter to a `Reader` object.
  `void`
  `setNClob(int parameterIndex, NClob value)`
  Sets the designated parameter to a `java.sql.NClob` object.
  `void`
  `setNClob(String parameterName, Reader reader)`
  Sets the designated parameter to a `Reader` object.
  `void`
  `setNClob(String parameterName, Reader reader, long length)`
  Sets the designated parameter to a `Reader` object.
  `void`
  `setNClob(String parameterName, NClob value)`
  Sets the designated parameter to a `java.sql.NClob` object.
  `void`
  `setNString(int parameterIndex, String value)`
  Sets the designated parameter to the given `String` object.
  `void`
  `setNString(String parameterName, String value)`
  Sets the designated parameter to the given `String` object.
  `void`
  `setNull(int parameterIndex, int sqlType)`
  Sets the designated parameter in this `RowSet` object's SQL command to SQL `NULL`.
  `void`
  `setNull(int paramIndex, int sqlType, String typeName)`
  Sets the designated parameter in this `RowSet` object's SQL command to SQL `NULL`.
  `void`
  `setNull(String parameterName, int sqlType)`
  Sets the designated parameter to SQL `NULL`.
  `void`
  `setNull(String parameterName, int sqlType, String typeName)`
  Sets the designated parameter to SQL `NULL`.
  `void`
  `setObject(int parameterIndex, Object x)`
  Sets the designated parameter in this `RowSet` object's command with a Java `Object`.
  `void`
  `setObject(int parameterIndex, Object x, int targetSqlType)`
  Sets the designated parameter in this `RowSet` object's command with a Java `Object`.
  `void`
  `setObject(int parameterIndex, Object x, int targetSqlType, int scaleOrLength)`
  Sets the designated parameter in this `RowSet` object's command with the given Java `Object`.
  `void`
  `setObject(String parameterName, Object x)`
  Sets the value of the designated parameter with the given object.
  `void`
  `setObject(String parameterName, Object x, int targetSqlType)`
  Sets the value of the designated parameter with the given object.
  `void`
  `setObject(String parameterName, Object x, int targetSqlType, int scale)`
  Sets the value of the designated parameter with the given object.
  `void`
  `setPassword(String password)`
  Sets the database password for this `RowSet` object to the given `String`.
  `void`
  `setQueryTimeout(int seconds)`
  Sets the maximum time the driver will wait for a statement to execute to the given number of seconds.
  `void`
  `setReadOnly(boolean value)`
  Sets whether this `RowSet` object is read-only to the given `boolean`.
  `void`
  `setRef(int i, Ref x)`
  Sets the designated parameter in this `RowSet` object's command with the given `Ref` value.
  `void`
  `setRowId(int parameterIndex, RowId x)`
  Sets the designated parameter to the given `java.sql.RowId` object.
  `void`
  `setRowId(String parameterName, RowId x)`
  Sets the designated parameter to the given `java.sql.RowId` object.
  `void`
  `setShort(int parameterIndex, short x)`
  Sets the designated parameter in this `RowSet` object's command to the given Java `short` value.
  `void`
  `setShort(String parameterName, short x)`
  Sets the designated parameter to the given Java `short` value.
  `void`
  `setSQLXML(int parameterIndex, SQLXML xmlObject)`
  Sets the designated parameter to the given `java.sql.SQLXML` object.
  `void`
  `setSQLXML(String parameterName, SQLXML xmlObject)`
  Sets the designated parameter to the given `java.sql.SQLXML` object.
  `void`
  `setString(int parameterIndex, String x)`
  Sets the designated parameter in this `RowSet` object's command to the given Java `String` value.
  `void`
  `setString(String parameterName, String x)`
  Sets the designated parameter to the given Java `String` value.
  `void`
  `setTime(int parameterIndex, Time x)`
  Sets the designated parameter in this `RowSet` object's command to the given `java.sql.Time` value.
  `void`
  `setTime(int parameterIndex, Time x, Calendar cal)`
  Sets the designated parameter in this `RowSet` object's command with the given `java.sql.Time` value.
  `void`
  `setTime(String parameterName, Time x)`
  Sets the designated parameter to the given `java.sql.Time` value.
  `void`
  `setTime(String parameterName, Time x, Calendar cal)`
  Sets the designated parameter to the given `java.sql.Time` value, using the given `Calendar` object.
  `void`
  `setTimestamp(int parameterIndex, Timestamp x)`
  Sets the designated parameter in this `RowSet` object's command to the given `java.sql.Timestamp` value.
  `void`
  `setTimestamp(int parameterIndex, Timestamp x, Calendar cal)`
  Sets the designated parameter in this `RowSet` object's command with the given `java.sql.Timestamp` value.
  `void`
  `setTimestamp(String parameterName, Timestamp x)`
  Sets the designated parameter to the given `java.sql.Timestamp` value.
  `void`
  `setTimestamp(String parameterName, Timestamp x, Calendar cal)`
  Sets the designated parameter to the given `java.sql.Timestamp` value, using the given `Calendar` object.
  `void`
  `setTransactionIsolation(int level)`
  Sets the transaction isolation level for this `RowSet` object.
  `void`
  `setType(int type)`
  Sets the type of this `RowSet` object to the given type.
  `void`
  `setTypeMap(Map<String,Class<?>> map)`
  Installs the given `java.util.Map` object as the default type map for this `RowSet` object.
  `void`
  `setUrl(String url)`
  Sets the URL this `RowSet` object will use when it uses the `DriverManager` to create a connection.
  `void`
  `setURL(int parameterIndex, URL x)`
  Sets the designated parameter to the given `java.net.URL` value.
  `void`
  `setUsername(String name)`
  Sets the username property for this `RowSet` object to the given `String`.

  ### Methods declared in interface WebRowSet

  `readXml, readXml, writeXml, writeXml, writeXml, writeXml`
  Modifier and Type
  Method
  Description
  `void`
  `readXml(InputStream iStream)`
  Reads a stream based XML input to populate this `WebRowSet` object.
  `void`
  `readXml(Reader reader)`
  Reads a `WebRowSet` object in its XML format from the given `Reader` object.
  `void`
  `writeXml(OutputStream oStream)`
  Writes the data, properties, and metadata for this `WebRowSet` object to the given `OutputStream` object in XML format.
  `void`
  `writeXml(Writer writer)`
  Writes the data, properties, and metadata for this `WebRowSet` object to the given `Writer` object in XML format.
  `void`
  `writeXml(ResultSet rs, OutputStream oStream)`
  Populates this `WebRowSet` object with the contents of the given `ResultSet` object and writes its data, properties, and metadata to the given `OutputStream` object in XML format.
  `void`
  `writeXml(ResultSet rs, Writer writer)`
  Populates this `WebRowSet` object with the contents of the given `ResultSet` object and writes its data, properties, and metadata to the given `Writer` object in XML format.

  ### Methods declared in interface Wrapper

  `isWrapperFor, unwrap`
  Modifier and Type
  Method
  Description
  `boolean`
  `isWrapperFor(Class<?> iface)`
  Returns true if this either implements the interface argument or is directly or indirectly a wrapper for an object that does.
  `<T> T`
  `unwrap(Class<T> iface)`
  Returns an object that implements the given interface to allow access to non-standard methods, or standard methods not exposed by the proxy.

- ## Method Details

  - ### setFilter

    void setFilter(Predicate p) throws SQLException
    Applies the given `Predicate` object to this `FilteredRowSet` object. The filter applies controls both to inbound and outbound views, constraining which rows are visible and which rows can be manipulated.

    A new `Predicate` object may be set at any time. This has the effect of changing constraints on the `RowSet` object's data. In addition, modifying the filter at runtime presents issues whereby multiple components may be operating on one `FilteredRowSet` object. Application developers must take responsibility for managing multiple handles to `FilteredRowSet` objects when their underling `Predicate` objects change.

    Parameters:
      `p` - a `Predicate` object defining the filter for this `FilteredRowSet` object. Setting a null value will clear the predicate, allowing all rows to become visible.
    Throws:
      `SQLException` - if an error occurs when setting the `Predicate` object

  - ### getFilter

    Predicate getFilter()
    Retrieves the active filter for this `FilteredRowSet` object.
    Returns:
      p the `Predicate` for this `FilteredRowSet` object; `null` if no filter has been set.