"Stateless cursor" class: easy API for retrieving parts of result sets More...
#include <cursor.hxx>
Public Types | |
typedef result::difference_type | difference_type |
typedef result::size_type | size_type |
Public Member Functions | |
stateless_cursor (transaction_base &trans, const PGSTD::string &query, const PGSTD::string &cname, bool hold) | |
Create cursor. More... | |
stateless_cursor (transaction_base &trans, const PGSTD::string adopted_cursor) | |
Adopt existing scrolling SQL cursor. More... | |
void | close () throw () |
const PGSTD::string & | name () const throw () |
result | retrieve (difference_type begin_pos, difference_type end_pos) |
Retrieve rows from begin_pos (inclusive) to end_pos (exclusive) More... | |
size_type | size () |
Number of rows in cursor's result set. More... | |
Private Attributes | |
internal::sql_cursor | m_cur |
"Stateless cursor" class: easy API for retrieving parts of result sets
This is a front-end for SQL cursors, but with a more C++-like API.
Actually, stateless_cursor feels entirely different from SQL cursors. You don't keep track of positions, fetches, and moves; you just say which rows you want. See the retrieve() member function.
typedef result::difference_type pqxx::stateless_cursor< up, op >::difference_type |
typedef result::size_type pqxx::stateless_cursor< up, op >::size_type |
|
inline |
Create cursor.
|
inline |
Adopt existing scrolling SQL cursor.
References pqxx::cursor_base::backward_all().
|
inline |
|
inline |
|
inline |
Retrieve rows from begin_pos (inclusive) to end_pos (exclusive)
Rows are numbered starting from 0 to size()-1.
begin_pos | First row to retrieve. May be one row beyond the end of the result set, to avoid errors for empty result sets. Otherwise, must be a valid row number in the result set. |
end_pos | Row up to which to fetch. Rows are returned ordered from begin_pos to end_pos, i.e. in ascending order if begin_pos < end_pos but in descending order if begin_pos > end_pos. The end_pos may be arbitrarily inside or outside the result set; only existing rows are included in the result. |
References pqxx::internal::stateless_cursor_retrieve().
|
inline |
Number of rows in cursor's result set.
References pqxx::internal::obtain_stateless_cursor_size().
|
private |