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§
sourcefn get_rows(
&mut self,
sql: &str,
params: Vec<Value>
) -> BoxFuture<'_, Result<Vec<Box<dyn Row>>, Error>>
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
sourcefn exec(
&mut self,
sql: &str,
params: Vec<Value>
) -> BoxFuture<'_, Result<ExecResult, Error>>
fn exec( &mut self, sql: &str, params: Vec<Value> ) -> BoxFuture<'_, Result<ExecResult, Error>>
Execute a query that is expected to update some rows.
sourcefn close(&mut self) -> BoxFuture<'_, Result<(), Error>>
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
Provided Methods§
Trait Implementations§
source§impl Connection for Box<dyn Connection>
impl Connection for Box<dyn Connection>
source§fn get_rows(
&mut self,
sql: &str,
params: Vec<Value>
) -> BoxFuture<'_, Result<Vec<Box<dyn Row>>, Error>>
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
statementsource§fn get_values(
&mut self,
sql: &str,
params: Vec<Value>
) -> BoxFuture<'_, Result<Vec<Value>, Error>>
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
statementsource§fn exec(
&mut self,
sql: &str,
params: Vec<Value>
) -> BoxFuture<'_, Result<ExecResult, Error>>
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 close(&mut self) -> BoxFuture<'_, Result<(), Error>>
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; }