pub struct Database(_);Expand description
Main API wrapper.
All operations can be started with methods of this struct.
Implementations§
source§impl Database
impl Database
sourcepub async fn connect(
configuration: DatabaseConfiguration
) -> Result<Self, Error>
pub async fn connect( configuration: DatabaseConfiguration ) -> Result<Self, Error>
Connect to the database using configuration.
sourcepub async fn raw_sql<'a>(
&self,
query_string: &'a str,
bind_params: Option<&[Value<'a>]>,
transaction: Option<&mut Transaction>
) -> Result<Vec<Row>, Error>
pub async fn raw_sql<'a>( &self, query_string: &'a str, bind_params: Option<&[Value<'a>]>, transaction: Option<&mut Transaction> ) -> Result<Vec<Row>, Error>
Execute raw SQL statements on the database.
If possible, the statement is executed as prepared statement.
To bind parameter, use ? as placeholder in SQLite and MySQL and $1, $2, $n in Postgres.
Parameter:
query_string: Reference to a valid SQL query.bind_params: Optional list of values to bind in the query.transaction: Optional transaction to execute the query on.
Returns a list of rows. If there are no values to retrieve, an empty list is returned.
sourcepub async fn start_transaction(&self) -> Result<Transaction, Error>
pub async fn start_transaction(&self) -> Result<Transaction, Error>
Entry point for a Transaction.
Trait Implementations§
source§impl<'executor> Executor<'executor> for &'executor Database
impl<'executor> Executor<'executor> for &'executor Database
source§fn execute<'data, 'result, Q>(
self,
query: String,
values: Vec<Value<'data>>
) -> Q::Result<'result>where
Q: QueryStrategy,
'executor: 'result,
'data: 'result,
fn execute<'data, 'result, Q>( self, query: String, values: Vec<Value<'data>> ) -> Q::Result<'result>where Q: QueryStrategy, 'executor: 'result, 'data: 'result,
Execute a query Read more
§type EnsureTransactionFuture = Pin<Box<dyn Future<Output = Result<TransactionGuard<'executor>, Error>> + Send + 'executor, Global>>
type EnsureTransactionFuture = Pin<Box<dyn Future<Output = Result<TransactionGuard<'executor>, Error>> + Send + 'executor, Global>>
A future producing a
TransactionGuard returned by ensure_transactionsource§fn ensure_transaction(
self
) -> BoxFuture<'executor, Result<TransactionGuard<'executor>, Error>>
fn ensure_transaction( self ) -> BoxFuture<'executor, Result<TransactionGuard<'executor>, Error>>
Ensure a piece of code is run inside a transaction using a
TransactionGuard. Read moreAuto Trait Implementations§
impl !RefUnwindSafe for Database
impl Send for Database
impl Sync for Database
impl Unpin for Database
impl !UnwindSafe for Database
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more