4353 lines · 201.8 KB · Java
RawDownload
     * to the fourth row, starting from the beginning of the rowset.     * <PRE><code>     *     *    crs.absolute(4);     *     * </code> </PRE>     * <P>     * If the number is negative, the cursor moves to an absolute row position     * with respect to the end of the rowset.  For example, calling     * <code>absolute(-1)</code> positions the cursor on the last row,     * <code>absolute(-2)</code> moves it on the next-to-last row, and so on.     * If the <code>JoinRowSetImpl</code> object <code>crs</code> has five rows,     * the following command moves the cursor to the fourth-to-last row, which     * in the case of a  rowset with five rows, is also the second row, counting     * from the beginning.     * <PRE><code>     *     *    crs.absolute(-4);     *     * </code> </PRE>     *     * If the number specified is larger than the number of rows, the cursor     * will move to the position after the last row. If the number specified     * would move the cursor one or more rows before the first row, the cursor     * moves to the position before the first row.     * <P>     * Note: Calling <code>absolute(1)</code> is the same as calling the     * method <code>first()</code>.  Calling <code>absolute(-1)</code> is the     * same as calling <code>last()</code>.     *     * @param row a positive number to indicate the row, starting row numbering from     *        the first row, which is <code>1</code>; a negative number to indicate     *        the row, starting row numbering from the last row, which is     *        <code>-1</code>; must not be <code>0</code>     * @return <code>true</code> if the cursor is on the rowset; <code>false</code>     *         otherwise     * @throws SQLException if the given cursor position is <code>0</code> or the     *            type of this rowset is <code>ResultSet.TYPE_FORWARD_ONLY</code>     */    public boolean absolute(int row) throws SQLException {        return crsInternal.absolute(row);    }     /**     * Moves the cursor the specified number of rows from the current     * position, with a positive number moving it forward and a     * negative number moving it backward.     * <P>     * If the number is positive, the cursor moves the specified number of     * rows toward the end of the rowset, starting at the current row.     * For example, the following command, in which     * <code>crs</code> is a <code>JoinRowSetImpl</code> object with 100 rows,     * moves the cursor forward four rows from the current row.  If the     * current row is 50, the cursor would move to row 54.     * <PRE><code>     *     *    crs.relative(4);     *     * </code> </PRE>     * <P>     * If the number is negative, the cursor moves back toward the beginning     * the specified number of rows, starting at the current row.     * For example, calling the method     * <code>absolute(-1)</code> positions the cursor on the last row,     * <code>absolute(-2)</code> moves it on the next-to-last row, and so on.     * If the <code>JoinRowSetImpl</code> object <code>crs</code> has five rows,     * the following command moves the cursor to the fourth-to-last row, which     * in the case of a  rowset with five rows, is also the second row     * from the beginning.     * <PRE><code>     *     *    crs.absolute(-4);     *     * </code> </PRE>     *     * If the number specified is larger than the number of rows, the cursor     * will move to the position after the last row. If the number specified     * would move the cursor one or more rows before the first row, the cursor     * moves to the position before the first row. In both cases, this method     * throws an <code>SQLException</code>.     * <P>     * Note: Calling <code>absolute(1)</code> is the same as calling the     * method <code>first()</code>.  Calling <code>absolute(-1)</code> is the     * same as calling <code>last()</code>.  Calling <code>relative(0)</code>     * is valid, but it does not change the cursor position.     *     * @param rows an <code>int</code> indicating the number of rows to move     *             the cursor, starting at the current row; a positive number     *             moves the cursor forward; a negative number moves the cursor     *             backward; must not move the cursor past the valid     *             rows     * @return <code>true</code> if the cursor is on a row in this     *         <code>JoinRowSetImpl</code> object; <code>false</code>     *         otherwise     * @throws SQLException if there are no rows in this rowset, the cursor is     *         positioned either before the first row or after the last row, or     *         the rowset is type <code>ResultSet.TYPE_FORWARD_ONLY</code>     */    public boolean relative(int rows) throws SQLException {        return crsInternal.relative(rows);    }     /**     * Moves this <code>JoinRowSetImpl</code> object's cursor to the     * previous row and returns <code>true</code> if the cursor is on     * a valid row or <code>false</code> if it is not.     * This method also notifies all listeners registered with this     * <code>JoinRowSetImpl</code> object that its cursor has moved.     * <P>     * Note: calling the method <code>previous()</code> is not the same     * as calling the method <code>relative(-1)</code>.  This is true     * because it is possible to call <code>previous()</code> from the insert     * row, from after the last row, or from the current row, whereas     * <code>relative</code> may only be called from the current row.     * <P>     * The method <code>previous</code> may used in a <code>while</code>     * loop to iterate through a rowset starting after the last row     * and moving toward the beginning. The loop ends when <code>previous</code>     * returns <code>false</code>, meaning that there are no more rows.     * For example, the following code fragment retrieves all the data in     * the <code>JoinRowSetImpl</code> object <code>crs</code>, which has     * three columns.  Note that the cursor must initially be positioned     * after the last row so that the first call to the method     * <code>previous</code> places the cursor on the last line.     * <PRE> <code>     *     *     crs.afterLast();     *     while (previous()) {     *         String name = crs.getString(1);     *         int age = crs.getInt(2);     *         short ssn = crs.getShort(3);     *         System.out.println(name + "   " + age + "   " + ssn);     *     }     *     * </code> </PRE>     * This method throws an <code>SQLException</code> if the cursor is not     * on a row in the rowset, before the first row, or after the last row.     *     * @return <code>true</code> if the cursor is on a valid row;     *         <code>false</code> if it is before the first row or after the     *         last row     * @throws SQLException if the cursor is not on a valid position or the     *           type of this rowset is <code>ResultSet.TYPE_FORWARD_ONLY</code>     */    public boolean previous() throws SQLException {        return crsInternal.previous();    }     /**     * Returns the index of the column whose name is <i>columnName</i>.     *     * @param columnName a <code>String</code> object giving the name of the     *        column for which the index will be returned; the name must     *        match the SQL name of a column in this <code>JoinRowSet</code>     *        object, ignoring case     * @throws SQLException if the given column name does not match one of the     *         column names for this <code>JoinRowSet</code> object     */    public int findColumn(String columnName) throws SQLException {        return crsInternal.findColumn(columnName);    }     /**     * Indicates whether the current row of this <code>JoinRowSetImpl</code>     * object has been updated.  The value returned     * depends on whether this rowset can detect updates: <code>false</code>     * will always be returned if it does not detect updates.     *     * @return <code>true</code> if the row has been visibly updated     *         by the owner or another and updates are detected;     *         <code>false</code> otherwise     * @throws SQLException if the cursor is on the insert row or not     *            on a valid row     *     * @see DatabaseMetaData#updatesAreDetected     */    public boolean rowUpdated() throws SQLException {        return crsInternal.rowUpdated();    }     /**     * Indicates whether the designated column of the current row of     * this <code>JoinRowSetImpl</code> object has been updated. The     * value returned depends on whether this rowset can detcted updates:     * <code>false</code> will always be returned if it does not detect updates.     *     * @return <code>true</code> if the column updated     *          <code>false</code> otherwse     * @throws SQLException if the cursor is on the insert row or not     *          on a valid row     * @see DatabaseMetaData#updatesAreDetected     */    public boolean columnUpdated(int indexColumn) throws SQLException {        return crsInternal.columnUpdated(indexColumn);    }     /**     * Indicates whether the current row has been inserted.  The value returned     * depends on whether or not the rowset can detect visible inserts.     *     * @return <code>true</code> if a row has been inserted and inserts are detected;     *         <code>false</code> otherwise     * @throws SQLException if the cursor is on the insert row or not     *            not on a valid row     *     * @see DatabaseMetaData#insertsAreDetected     */    public boolean rowInserted() throws SQLException {        return crsInternal.rowInserted();    }     /**     * Indicates whether the current row has been deleted.  A deleted row     * may leave a visible "hole" in a rowset.  This method can be used to     * detect such holes if the rowset can detect deletions. This method     * will always return <code>false</code> if this rowset cannot detect     * deletions.     *     * @return <code>true</code> if (1)the current row is blank, indicating that     *         the row has been deleted, and (2)deletions are detected;     *         <code>false</code> otherwise     * @throws SQLException if the cursor is on a valid row in this rowset     * @see DatabaseMetaData#deletesAreDetected     */    public boolean rowDeleted() throws SQLException {        return crsInternal.rowDeleted();    }     /**     * Sets the designated nullable column in the current row or the     * insert row of this <code>JoinRowSetImpl</code> object with     * <code>null</code> value.     * <P>     * This method updates a column value in the current row or the insert     * row of this rowset; however, another method must be called to complete     * the update process. If the cursor is on a row in the rowset, the     * method {@link #updateRow} must be called to mark the row as updated     * and to notify listeners that the row has changed.     * If the cursor is on the insert row, the method {@link #insertRow}     * must be called to insert the new row into this rowset and to notify     * listeners that a row has changed.     * <P>     * In order to propagate updates in this rowset to the underlying     * data source, an application must call the method acceptChanges     * after it calls either <code>updateRow</code> or <code>insertRow</code>.     *     * @param columnIndex the first column is <code>1</code>, the second     *        is <code>2</code>, and so on; must be <code>1</code> or larger     *        and equal to or less than the number of columns in this rowset     * @throws SQLException if (1) the given column index is out of bounds,     *            (2) the cursor is not on one of this rowset's rows or its     *            insert row, or (3) this rowset is     *            <code>ResultSet.CONCUR_READ_ONLY</code>     */    public void updateNull(int columnIndex) throws SQLException {        crsInternal.updateNull(columnIndex);    }     /**     * Sets the designated column in either the current row or the insert     * row of this <code>JoinRowSetImpl</code> object with the given     * <code>boolean</code> value.     * <P>     * This method updates a column value in the current row or the insert     * row of this rowset, but it does not update the database.     * If the cursor is on a row in the rowset, the     * method {@link #updateRow} must be called to update the database.     * If the cursor is on the insert row, the method {@link #insertRow}     * must be called, which will insert the new row into both this rowset     * and the database. Both of these methods must be called before the     * cursor moves to another row.     *     * @param columnIndex the first column is <code>1</code>, the second     *        is <code>2</code>, and so on; must be <code>1</code> or larger     *        and equal to or less than the number of columns in this rowset     * @param x the new column value     * @throws SQLException if (1) the given column index is out of bounds,     *            (2) the cursor is not on one of this rowset's rows or its     *            insert row, or (3) this rowset is     *            <code>ResultSet.CONCUR_READ_ONLY</code>     */    public void updateBoolean(int columnIndex, boolean x) throws SQLException {        crsInternal.updateBoolean(columnIndex, x);    }     /**     * Sets the designated column in either the current row or the insert     * row of this <code>JoinRowSetImpl</code> object with the given     * <code>byte</code> value.     * <P>     * This method updates a column value in the current row or the insert     * row of this rowset, but it does not update the database.     * If the cursor is on a row in the rowset, the     * method {@link #updateRow} must be called to update the database.     * If the cursor is on the insert row, the method {@link #insertRow}     * must be called, which will insert the new row into both this rowset     * and the database. Both of these methods must be called before the     * cursor moves to another row.     *     * @param columnIndex the first column is <code>1</code>, the second     *        is <code>2</code>, and so on; must be <code>1</code> or larger     *        and equal to or less than the number of columns in this rowset     * @param x the new column value     * @throws SQLException if (1) the given column index is out of bounds,     *            (2) the cursor is not on one of this rowset's rows or its     *            insert row, or (3) this rowset is     *            <code>ResultSet.CONCUR_READ_ONLY</code>     */    public void updateByte(int columnIndex, byte x) throws SQLException {        crsInternal.updateByte(columnIndex, x);    }     /**     * Sets the designated column in either the current row or the insert     * row of this <code>JoinRowSetImpl</code> object with the given     * <code>short</code> value.     * <P>     * This method updates a column value in the current row or the insert     * row of this rowset, but it does not update the database.     * If the cursor is on a row in the rowset, the     * method {@link #updateRow} must be called to update the database.     * If the cursor is on the insert row, the method {@link #insertRow}     * must be called, which will insert the new row into both this rowset     * and the database. Both of these methods must be called before the     * cursor moves to another row.     *     * @param columnIndex the first column is <code>1</code>, the second     *        is <code>2</code>, and so on; must be <code>1</code> or larger     *        and equal to or less than the number of columns in this rowset     * @param x the new column value     * @throws SQLException if (1) the given column index is out of bounds,     *            (2) the cursor is not on one of this rowset's rows or its     *            insert row, or (3) this rowset is     *            <code>ResultSet.CONCUR_READ_ONLY</code>     */    public void updateShort(int columnIndex, short x) throws SQLException {        crsInternal.updateShort(columnIndex, x);    }     /**     * Sets the designated column in either the current row or the insert     * row of this <code>JoinRowSetImpl</code> object with the given     * <code>int</code> value.     * <P>     * This method updates a column value in the current row or the insert     * row of this rowset, but it does not update the database.     * If the cursor is on a row in the rowset, the     * method {@link #updateRow} must be called to update the database.     * If the cursor is on the insert row, the method {@link #insertRow}     * must be called, which will insert the new row into both this rowset     * and the database. Both of these methods must be called before the     * cursor moves to another row.     *     * @param columnIndex the first column is <code>1</code>, the second     *        is <code>2</code>, and so on; must be <code>1</code> or larger     *        and equal to or less than the number of columns in this rowset     * @param x the new column value     * @throws SQLException if (1) the given column index is out of bounds,     *            (2) the cursor is not on one of this rowset's rows or its     *            insert row, or (3) this rowset is     *            <code>ResultSet.CONCUR_READ_ONLY</code>     */    public void updateInt(int columnIndex, int x) throws SQLException {        crsInternal.updateInt(columnIndex, x);    }     /**     * Sets the designated column in either the current row or the insert     * row of this <code>JoinRowSetImpl</code> object with the given     * <code>long</code> value.     * <P>     * This method updates a column value in the current row or the insert     * row of this rowset, but it does not update the database.     * If the cursor is on a row in the rowset, the     * method {@link #updateRow} must be called to update the database.     * If the cursor is on the insert row, the method {@link #insertRow}     * must be called, which will insert the new row into both this rowset     * and the database. Both of these methods must be called before the     * cursor moves to another row.     *     * @param columnIndex the first column is <code>1</code>, the second     *        is <code>2</code>, and so on; must be <code>1</code> or larger     *        and equal to or less than the number of columns in this rowset     * @param x the new column value     * @throws SQLException if (1) the given column index is out of bounds,     *            (2) the cursor is not on one of this rowset's rows or its     *            insert row, or (3) this rowset is     *            <code>ResultSet.CONCUR_READ_ONLY</code>     */    public void updateLong(int columnIndex, long x) throws SQLException {        crsInternal.updateLong(columnIndex, x);    }     /**     * Sets the designated column in either the current row or the insert     * row of this <code>JoinRowSetImpl</code> object with the given     * <code>float</code> value.     * <P>     * This method updates a column value in the current row or the insert     * row of this rowset, but it does not update the database.     * If the cursor is on a row in the rowset, the     * method {@link #updateRow} must be called to update the database.     * If the cursor is on the insert row, the method {@link #insertRow}     * must be called, which will insert the new row into both this rowset     * and the database. Both of these methods must be called before the     * cursor moves to another row.     *     * @param columnIndex the first column is <code>1</code>, the second     *        is <code>2</code>, and so on; must be <code>1</code> or larger     *        and equal to or less than the number of columns in this rowset     * @param x the new column value     * @throws SQLException if (1) the given column index is out of bounds,     *            (2) the cursor is not on one of this rowset's rows or its     *            insert row, or (3) this rowset is     *            <code>ResultSet.CONCUR_READ_ONLY</code>     */    public void updateFloat(int columnIndex, float x) throws SQLException {        crsInternal.updateFloat(columnIndex, x);    }     /**     * Sets the designated column in either the current row or the insert     * row of this <code>JoinRowSetImpl</code> object with the given     * <code>double</code> value.     *     * This method updates a column value in either the current row or     * the insert row of this rowset, but it does not update the     * database.  If the cursor is on a row in the rowset, the     * method {@link #updateRow} must be called to update the database.     * If the cursor is on the insert row, the method {@link #insertRow}     * must be called, which will insert the new row into both this rowset     * and the database. Both of these methods must be called before the     * cursor moves to another row.     *     * @param columnIndex the first column is <code>1</code>, the second     *        is <code>2</code>, and so on; must be <code>1</code> or larger     *        and equal to or less than the number of columns in this rowset     * @param x the new column value     * @throws SQLException if (1) the given column index is out of bounds,     *            (2) the cursor is not on one of this rowset's rows or its     *            insert row, or (3) this rowset is     *            <code>ResultSet.CONCUR_READ_ONLY</code>     */    public void updateDouble(int columnIndex, double x) throws SQLException {        crsInternal.updateDouble(columnIndex, x);    }     /**     * Sets the designated column in either the current row or the insert     * row of this <code>JoinRowSetImpl</code> object with the given     * <code>java.math.BigDecimal</code> object.     * <P>     * This method updates a column value in the current row or the insert     * row of this rowset, but it does not update the database.     * If the cursor is on a row in the rowset, the     * method {@link #updateRow} must be called to update the database.     * If the cursor is on the insert row, the method {@link #insertRow}     * must be called, which will insert the new row into both this rowset     * and the database. Both of these methods must be called before the     * cursor moves to another row.     *     * @param columnIndex the first column is <code>1</code>, the second     *        is <code>2</code>, and so on; must be <code>1</code> or larger     *        and equal to or less than the number of columns in this rowset     * @param x the new column value     * @throws SQLException if (1) the given column index is out of bounds,     *            (2) the cursor is not on one of this rowset's rows or its     *            insert row, or (3) this rowset is     *            <code>ResultSet.CONCUR_READ_ONLY</code>     */    public void updateBigDecimal(int columnIndex, BigDecimal x) throws SQLException {        crsInternal.updateBigDecimal(columnIndex, x);    }     /**     * Sets the designated column in either the current row or the insert     * row of this <code>JoinRowSetImpl</code> object with the given     * <code>String</code> object.     * <P>     * This method updates a column value in either the current row or     * the insert row of this rowset, but it does not update the     * database.  If the cursor is on a row in the rowset, the     * method {@link #updateRow} must be called to mark the row as updated.     * If the cursor is on the insert row, the method {@link #insertRow}     * must be called to insert the new row into this rowset and mark it     * as inserted. Both of these methods must be called before the     * cursor moves to another row.     * <P>     * The method <code>acceptChanges</code> must be called if the     * updated values are to be written back to the underlying database.     *     * @param columnIndex the first column is <code>1</code>, the second     *        is <code>2</code>, and so on; must be <code>1</code> or larger     *        and equal to or less than the number of columns in this rowset     * @param x the new column value     * @throws SQLException if (1) the given column index is out of bounds,     *            (2) the cursor is not on one of this rowset's rows or its     *            insert row, or (3) this rowset is     *            <code>ResultSet.CONCUR_READ_ONLY</code>     */

Lines 2001–2500 of 4353. Previous lines