[−][src]Trait rbatis_core::cursor::Cursor
Represents a result set, which is generated by executing a query against the database.
A Cursor can be created by either Executor::fetch or Query::fetch.
ⓘThis example is not tested
let mut cursor = rbatis_core::query("SELECT slug, title, description FROM articles") .fetch(&mut conn);
Initially the Cursor is positioned before the first row. The next method moves the cursor
to the next row, and because it returns None when there are no more rows, it can be used
in a while loop to iterate through all returned rows.
ⓘThis example is not tested
// For each row in the result set .. while let Some(row) = cursor.next().await? { // .. decode a domain type from the row let obj = Article::from_row(row)?; }
This trait is sealed and cannot be implemented for types outside of rbatis_core.
Associated Types
Loading content...Required methods
fn next<'cur>(
&'cur mut self
) -> BoxFuture<'cur, Result<Option<<Self::Database as HasRow<'cur>>::Row>>>
&'cur mut self
) -> BoxFuture<'cur, Result<Option<<Self::Database as HasRow<'cur>>::Row>>>
Creates a future that attempts to resolve the next row in the cursor.
fn decode_json<T>(&mut self) -> BoxFuture<Result<T, Error>> where
T: DeserializeOwned,
T: DeserializeOwned,