[
http://issues.apache.org/jira/browse/DERBY-276?page=comments#action_66254 ]
Shreyas Kaushik commented on DERBY-276:
---------------------------------------
Javadoc for J2SE 5.0 says...
relative
boolean relative(int rows)
throws SQLException
Moves the cursor a relative number of rows, either positive or negative.
Attempting to move beyond the first/last row in the result set positions the
cursor before/after the the first/last row. Calling relative(0) is valid, but
does not change the cursor position.
Note: Calling the method relative(1) is identical to calling the method
next() and calling the method relative(-1) is identical to calling the method
previous().
Parameters:
rows - an int specifying the number of rows to move from the current
row; a positive number moves the cursor forward; a negative number moves the
cursor backward
Returns:
true if the cursor is on a row; false otherwise
Throws:
SQLException - if a database access error occurs, there is no current
row, or the result set type is TYPE_FORWARD_ONLY
Since:
1.2
> ResultSet.relative(int row) cannot be called when the cursor is not
> positioned on a row.
> ----------------------------------------------------------------------------------------
>
> Key: DERBY-276
> URL: http://issues.apache.org/jira/browse/DERBY-276
> Project: Derby
> Type: Improvement
> Components: JDBC
> Reporter: Bernt M. Johnsen
> Assignee: Bernt M. Johnsen
> Priority: Minor
>
> If the cursor is not positioned on a row, calling ResultSet.relative() causes
> the following exception:
> Exception in thread "main" ERROR X0X87: ResultSet.relative(int row) cannot be
> called when the cursor is not positioned on a row.
> at
> org.apache.derby.iapi.error.StandardException.newException(StandardException.java:301)
> at
> org.apache.derby.impl.sql.execute.ScrollInsensitiveResultSet.getRelativeRow(ScrollInsensitiveResultSet.java:336)
> at
> org.apache.derby.impl.jdbc.EmbedResultSet.movePosition(EmbedResultSet.java:366)
> at
> org.apache.derby.impl.jdbc.EmbedResultSet.relative(EmbedResultSet.java:1840)
> However, The 1.4.2 Javadoc says:
> Note: Calling the method relative(1) is identical to calling the method
> next() and calling the method relative(-1) is identical to calling the method
> previous(). (This is confirmed by the JDBC 3.0 spec, ch. 14.2.2)
> Since next() is valid, so should rs.relative(1) (and all other arguments,
> since a too large value will position the
> cursor after the last row, and a too low value will position it before the
> first).
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira