Trait mysql_quick::BinQuery
source · pub trait BinQuery: Sized {
// Required method
fn run<'a, 'b, 'c, C>(
self,
conn: C
) -> Result<QueryResult<'a, 'b, 'c, Binary>, Error>
where C: TryInto<ConnMut<'a, 'b, 'c>>,
Error: From<<C as TryInto<ConnMut<'a, 'b, 'c>>>::Error>;
// Provided methods
fn first<'a, 'b, 'c, T, C>(self, conn: C) -> Result<Option<T>, Error>
where 'c: 'b,
C: TryInto<ConnMut<'a, 'b, 'c>>,
Error: From<<C as TryInto<ConnMut<'a, 'b, 'c>>>::Error>,
T: FromRow { ... }
fn first_opt<'a, 'b, 'c, T, C>(
self,
conn: C
) -> Result<Option<Result<T, FromRowError>>, Error>
where 'c: 'b,
C: TryInto<ConnMut<'a, 'b, 'c>>,
Error: From<<C as TryInto<ConnMut<'a, 'b, 'c>>>::Error>,
T: FromRow { ... }
fn fetch<'a, 'b, 'c, T, C>(self, conn: C) -> Result<Vec<T>, Error>
where 'c: 'b,
C: TryInto<ConnMut<'a, 'b, 'c>>,
Error: From<<C as TryInto<ConnMut<'a, 'b, 'c>>>::Error>,
T: FromRow { ... }
fn fetch_opt<'a, 'b, 'c, T, C>(
self,
conn: C
) -> Result<Vec<Result<T, FromRowError>>, Error>
where 'c: 'b,
C: TryInto<ConnMut<'a, 'b, 'c>>,
Error: From<<C as TryInto<ConnMut<'a, 'b, 'c>>>::Error>,
T: FromRow { ... }
fn fold<'a, 'b, 'c, T, U, F, C>(
self,
conn: C,
init: U,
next: F
) -> Result<U, Error>
where 'c: 'b,
C: TryInto<ConnMut<'a, 'b, 'c>>,
Error: From<<C as TryInto<ConnMut<'a, 'b, 'c>>>::Error>,
T: FromRow,
F: FnMut(U, T) -> U { ... }
fn fold_opt<'a, 'b, 'c, T, U, F, C>(
self,
conn: C,
init: U,
next: F
) -> Result<U, Error>
where 'c: 'b,
C: TryInto<ConnMut<'a, 'b, 'c>>,
Error: From<<C as TryInto<ConnMut<'a, 'b, 'c>>>::Error>,
T: FromRow,
F: FnMut(U, Result<T, FromRowError>) -> U { ... }
fn map<'a, 'b, 'c, T, U, F, C>(
self,
conn: C,
map: F
) -> Result<Vec<U>, Error>
where 'c: 'b,
C: TryInto<ConnMut<'a, 'b, 'c>>,
Error: From<<C as TryInto<ConnMut<'a, 'b, 'c>>>::Error>,
T: FromRow,
F: FnMut(T) -> U { ... }
fn map_opt<'a, 'b, 'c, T, U, F, C>(
self,
conn: C,
map: F
) -> Result<Vec<U>, Error>
where 'c: 'b,
C: TryInto<ConnMut<'a, 'b, 'c>>,
Error: From<<C as TryInto<ConnMut<'a, 'b, 'c>>>::Error>,
T: FromRow,
F: FnMut(Result<T, FromRowError>) -> U { ... }
}Expand description
MySql prepared statement query.
This trait covers the set of exec* methods on the Queryable trait.
Please see the corresponding section of the crate level docs for details.
Example:
use mysql::*;
use mysql::prelude::*;
let pool = Pool::new(get_opts())?;
let num: Option<u32> = "SELECT ?"
.with((42,))
.first(&pool)?;
assert_eq!(num, Some(42));Required Methods§
Provided Methods§
sourcefn first<'a, 'b, 'c, T, C>(self, conn: C) -> Result<Option<T>, Error>
fn first<'a, 'b, 'c, T, C>(self, conn: C) -> Result<Option<T>, Error>
This methods corresponds to Queryable::exec_first.
sourcefn first_opt<'a, 'b, 'c, T, C>(
self,
conn: C
) -> Result<Option<Result<T, FromRowError>>, Error>
fn first_opt<'a, 'b, 'c, T, C>( self, conn: C ) -> Result<Option<Result<T, FromRowError>>, Error>
Same as BinQuery::first but useful when you not sure what your schema is.
sourcefn fetch<'a, 'b, 'c, T, C>(self, conn: C) -> Result<Vec<T>, Error>
fn fetch<'a, 'b, 'c, T, C>(self, conn: C) -> Result<Vec<T>, Error>
This methods corresponds to Queryable::exec.
sourcefn fetch_opt<'a, 'b, 'c, T, C>(
self,
conn: C
) -> Result<Vec<Result<T, FromRowError>>, Error>
fn fetch_opt<'a, 'b, 'c, T, C>( self, conn: C ) -> Result<Vec<Result<T, FromRowError>>, Error>
Same as BinQuery::fetch but useful when you not sure what your schema is.
sourcefn fold<'a, 'b, 'c, T, U, F, C>(
self,
conn: C,
init: U,
next: F
) -> Result<U, Error>
fn fold<'a, 'b, 'c, T, U, F, C>( self, conn: C, init: U, next: F ) -> Result<U, Error>
This methods corresponds to Queryable::exec_fold.
sourcefn fold_opt<'a, 'b, 'c, T, U, F, C>(
self,
conn: C,
init: U,
next: F
) -> Result<U, Error>
fn fold_opt<'a, 'b, 'c, T, U, F, C>( self, conn: C, init: U, next: F ) -> Result<U, Error>
Same as BinQuery::fold but useful when you not sure what your schema is.
sourcefn map<'a, 'b, 'c, T, U, F, C>(self, conn: C, map: F) -> Result<Vec<U>, Error>
fn map<'a, 'b, 'c, T, U, F, C>(self, conn: C, map: F) -> Result<Vec<U>, Error>
This methods corresponds to Queryable::exec_map.
Object Safety§
This trait is not object safe.