Moving the Result Set Cursor
The ResultSet
stored in the variable xResult
contains the following data after the call above:
FIRSTNAME | LASTNAME | BIRTHDATE |
---|---|---|
Joseph | Smith | 02/07/46 |
Bob | Meyers | 09/07/49 |
To access the data, go to each row and retrieve the values according to their types. The method next()
is used to move the row cursor from row to row. Since the cursor is initially positioned just above the first row of a ResultSet
object, the first call to next()
moves the cursor to the first row and makes it the current row. For the same reason, use the method next()
to access the first row even if there is only one row in a result set. Subsequent invocations of next()
move the cursor down one row at a time.
The interface com.sun.star.sdbc.XResultSet offers methods to move to specific row numbers, and to positions relative to the current row, in addition to moving the cursor back and forth one row at a time:
// move one row at a time boolean next() boolean previous() // move a number of rows boolean absolute( [in] long row ) boolean relative( [in] long rows ) // move to result set borders and beyond boolean first() boolean last() void beforeFirst() void afterLast() //detect position boolean isBeforeFirst() boolean isAfterLast() boolean isFirst() boolean isLast() long getRow() // refetch row from the database void refreshRow() // row has been updated, inserted or deleted boolean rowUpdated() boolean rowInserted() boolean rowDeleted() // get the statement which created the result set com::sun::star::uno::XInterface getStatement()
![]() |
Note that you can only move the cursor backwards if you set the statement property ResultSetType to SCROLL_INSENSITIVE or SCROLL_SENSITIVE. For details, refer to chapter Scrollable Result Sets. |
Content on this page is licensed under the Public Documentation License (PDL). |