31class PQXX_LIBEXPORT sql_cursor :
public cursor_base
35 transaction_base &t, std::string_view query, std::string_view cname,
36 cursor_base::access_policy ap, cursor_base::update_policy up,
37 cursor_base::ownership_policy op,
bool hold);
40 transaction_base &t, std::string_view cname,
41 cursor_base::ownership_policy op);
43 ~sql_cursor()
noexcept { close(); }
45 result fetch(difference_type rows, difference_type &displacement);
46 result fetch(difference_type rows)
48 difference_type d = 0;
49 return fetch(rows, d);
51 difference_type move(difference_type rows, difference_type &displacement);
52 difference_type move(difference_type rows)
54 difference_type d = 0;
65 difference_type
pos() const noexcept {
return m_pos; }
74 difference_type
endpos() const noexcept {
return m_endpos; }
79 void close() noexcept;
82 difference_type adjust(difference_type hoped, difference_type actual);
83 static std::
string stridestring(difference_type);
85 void init_empty_result(transaction_base &);
94 result m_cached_current_row;
97 cursor_base::ownership_policy m_ownership;
103 difference_type m_pos;
106 difference_type m_endpos = -1;