Trait rbdc::db::Connection

source ·
pub trait Connection: Send {
    // Required methods
    fn get_rows(
        &mut self,
        sql: &str,
        params: Vec<Value>
    ) -> BoxFuture<'_, Result<Vec<Box<dyn Row>>, Error>>;
    fn exec(
        &mut self,
        sql: &str,
        params: Vec<Value>
    ) -> BoxFuture<'_, Result<ExecResult, Error>>;
    fn ping(&mut self) -> BoxFuture<'_, Result<(), Error>>;
    fn close(&mut self) -> BoxFuture<'_, Result<(), Error>>;

    // Provided methods
    fn get_values(
        &mut self,
        sql: &str,
        params: Vec<Value>
    ) -> BoxFuture<'_, Result<Vec<Value>, Error>> { ... }
    fn begin(&mut self) -> BoxFuture<'_, Result<(), Error>> { ... }
    fn commit(&mut self) -> BoxFuture<'_, Result<(), Error>> { ... }
    fn rollback(&mut self) -> BoxFuture<'_, Result<(), Error>> { ... }
}
Expand description

Represents a connection to a database

Required Methods§

source

fn get_rows( &mut self, sql: &str, params: Vec<Value> ) -> BoxFuture<'_, Result<Vec<Box<dyn Row>>, Error>>

Execute a query that is expected to return a result set, such as a SELECT statement

source

fn exec( &mut self, sql: &str, params: Vec<Value> ) -> BoxFuture<'_, Result<ExecResult, Error>>

Execute a query that is expected to update some rows.

source

fn ping(&mut self) -> BoxFuture<'_, Result<(), Error>>

ping

source

fn close(&mut self) -> BoxFuture<'_, Result<(), Error>>

close connection Normally conn is dropped when the link is dropped, but it is recommended to actively close this function so that the database does not report errors. If &mut self is not satisfied close, when you need mut self, It is recommended to use Option and then call take to take ownership and then if let Some(v) = self.inner.take() {v.lose ().await; }

Provided Methods§

source

fn get_values( &mut self, sql: &str, params: Vec<Value> ) -> BoxFuture<'_, Result<Vec<Value>, Error>>

Execute a query that is expected to return a result set, such as a SELECT statement

source

fn begin(&mut self) -> BoxFuture<'_, Result<(), Error>>

an translation impl begin

source

fn commit(&mut self) -> BoxFuture<'_, Result<(), Error>>

an translation impl commit

source

fn rollback(&mut self) -> BoxFuture<'_, Result<(), Error>>

an translation impl rollback

Trait Implementations§

source§

impl Connection for Box<dyn Connection>

source§

fn get_rows( &mut self, sql: &str, params: Vec<Value> ) -> BoxFuture<'_, Result<Vec<Box<dyn Row>>, Error>>

Execute a query that is expected to return a result set, such as a SELECT statement
source§

fn get_values( &mut self, sql: &str, params: Vec<Value> ) -> BoxFuture<'_, Result<Vec<Value>, Error>>

Execute a query that is expected to return a result set, such as a SELECT statement
source§

fn exec( &mut self, sql: &str, params: Vec<Value> ) -> BoxFuture<'_, Result<ExecResult, Error>>

Execute a query that is expected to update some rows.
source§

fn ping(&mut self) -> BoxFuture<'_, Result<(), Error>>

ping
source§

fn close(&mut self) -> BoxFuture<'_, Result<(), Error>>

close connection Normally conn is dropped when the link is dropped, but it is recommended to actively close this function so that the database does not report errors. If &mut self is not satisfied close, when you need mut self, It is recommended to use Option and then call take to take ownership and then if let Some(v) = self.inner.take() {v.lose ().await; }
source§

fn begin(&mut self) -> BoxFuture<'_, Result<(), Error>>

an translation impl begin
source§

fn rollback(&mut self) -> BoxFuture<'_, Result<(), Error>>

an translation impl rollback
source§

fn commit(&mut self) -> BoxFuture<'_, Result<(), Error>>

an translation impl commit

Implementations on Foreign Types§

source§

impl Connection for Box<dyn Connection>

source§

fn get_rows( &mut self, sql: &str, params: Vec<Value> ) -> BoxFuture<'_, Result<Vec<Box<dyn Row>>, Error>>

source§

fn get_values( &mut self, sql: &str, params: Vec<Value> ) -> BoxFuture<'_, Result<Vec<Value>, Error>>

source§

fn exec( &mut self, sql: &str, params: Vec<Value> ) -> BoxFuture<'_, Result<ExecResult, Error>>

source§

fn ping(&mut self) -> BoxFuture<'_, Result<(), Error>>

source§

fn close(&mut self) -> BoxFuture<'_, Result<(), Error>>

source§

fn begin(&mut self) -> BoxFuture<'_, Result<(), Error>>

source§

fn rollback(&mut self) -> BoxFuture<'_, Result<(), Error>>

source§

fn commit(&mut self) -> BoxFuture<'_, Result<(), Error>>

Implementors§