Struct mysql::conn::pool::MyPooledConn
[−]
[src]
pub struct MyPooledConn { // some fields omitted }
Pooled mysql connection which will return to the pool on drop
.
You should prefer using prepare
or prep_exec
instead of query
where possible, except
cases when statement has no params and when it has no return values or return values which
evaluates to Value::Bytes
.
query
is a part of mysql text protocol, so under the hood you will always receive
Value::Bytes
as a result and from_value
will need to parse it if you want, for example, i64
let mut conn = pool.get_conn().unwrap(); conn.query("SELECT 42").map(|mut result| { let cell = result.next().unwrap().unwrap().pop().unwrap(); assert_eq!(cell, Value::Bytes(b"42".to_vec())); assert_eq!(from_value::<i64>(cell), 42i64); }); conn.prep_exec("SELECT 42", ()).map(|mut result| { let cell = result.next().unwrap().unwrap().pop().unwrap(); assert_eq!(cell, Value::Int(42i64)); assert_eq!(from_value::<i64>(cell), 42i64); });
For more info on how to work with query results please look at
QueryResult
documentation.
Methods
impl MyPooledConn
fn query<'a, T: AsRef<str> + 'a>(&'a mut self, query: T) -> MyResult<QueryResult<'a>>
Redirects to
MyConn#query
.
fn prepare<'a, T: AsRef<str> + 'a>(&'a mut self, query: T) -> MyResult<Stmt<'a>>
Redirects to
MyConn#prepare
.
fn prep_exec<'a, A: AsRef<str> + 'a, T: ToRow>(&'a mut self, query: A, params: T) -> MyResult<QueryResult<'a>>
Redirects to
MyConn#prep_exec
.
fn start_transaction<'a>(&'a mut self, consistent_snapshot: bool, isolation_level: Option<IsolationLevel>, readonly: Option<bool>) -> MyResult<Transaction<'a>>
Redirects to
MyConn#start_transaction
fn as_mut<'a>(&'a mut self) -> &'a mut MyConn
Gives mutable reference to the wrapped
MyConn
.
fn as_ref<'a>(&'a self) -> &'a MyConn
Gives reference to the wrapped
MyConn
.
fn unwrap(self) -> MyConn
Unwraps wrapped MyConn
.