pub enum DatabaseConnection {
SqlxSqlitePoolConnection(SqlxSqlitePoolConnection),
Disconnected,
}
Expand description
Handle a database connection depending on the backend enabled by the feature flags. This creates a database pool.
Variants§
SqlxSqlitePoolConnection(SqlxSqlitePoolConnection)
Create a SQLite database connection and pool
Disconnected
The connection to the database has been severed
Implementations§
Trait Implementations§
source§impl Clone for DatabaseConnection
impl Clone for DatabaseConnection
source§fn clone(&self) -> DatabaseConnection
fn clone(&self) -> DatabaseConnection
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl ConnectionTrait for DatabaseConnection
impl ConnectionTrait for DatabaseConnection
source§fn get_database_backend(&self) -> DatabaseBackend
fn get_database_backend(&self) -> DatabaseBackend
Fetch the database backend as specified in DbBackend.
This depends on feature flags enabled.
source§fn execute<'life0, 'async_trait>(
&'life0 self,
stmt: Statement
) -> Pin<Box<dyn Future<Output = Result<ExecResult, DbErr>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
DatabaseConnection: 'async_trait,
fn execute<'life0, 'async_trait>( &'life0 self, stmt: Statement ) -> Pin<Box<dyn Future<Output = Result<ExecResult, DbErr>> + Send + 'async_trait, Global>>where 'life0: 'async_trait, DatabaseConnection: 'async_trait,
Execute a Statement
source§fn execute_unprepared<'life0, 'life1, 'async_trait>(
&'life0 self,
sql: &'life1 str
) -> Pin<Box<dyn Future<Output = Result<ExecResult, DbErr>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
'life1: 'async_trait,
DatabaseConnection: 'async_trait,
fn execute_unprepared<'life0, 'life1, 'async_trait>( &'life0 self, sql: &'life1 str ) -> Pin<Box<dyn Future<Output = Result<ExecResult, DbErr>> + Send + 'async_trait, Global>>where 'life0: 'async_trait, 'life1: 'async_trait, DatabaseConnection: 'async_trait,
Execute a unprepared Statement
source§fn query_one<'life0, 'async_trait>(
&'life0 self,
stmt: Statement
) -> Pin<Box<dyn Future<Output = Result<Option<QueryResult>, DbErr>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
DatabaseConnection: 'async_trait,
fn query_one<'life0, 'async_trait>( &'life0 self, stmt: Statement ) -> Pin<Box<dyn Future<Output = Result<Option<QueryResult>, DbErr>> + Send + 'async_trait, Global>>where 'life0: 'async_trait, DatabaseConnection: 'async_trait,
Execute a Statement and return a query
source§fn query_all<'life0, 'async_trait>(
&'life0 self,
stmt: Statement
) -> Pin<Box<dyn Future<Output = Result<Vec<QueryResult, Global>, DbErr>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
DatabaseConnection: 'async_trait,
fn query_all<'life0, 'async_trait>( &'life0 self, stmt: Statement ) -> Pin<Box<dyn Future<Output = Result<Vec<QueryResult, Global>, DbErr>> + Send + 'async_trait, Global>>where 'life0: 'async_trait, DatabaseConnection: 'async_trait,
Execute a Statement and return a collection Vec<QueryResult> on success
source§fn support_returning(&self) -> bool
fn support_returning(&self) -> bool
Check if the connection supports
RETURNING
syntax on insert and updatesource§fn is_mock_connection(&self) -> bool
fn is_mock_connection(&self) -> bool
Check if the connection is a test connection for the Mock database
source§impl Debug for DatabaseConnection
impl Debug for DatabaseConnection
source§impl Default for DatabaseConnection
impl Default for DatabaseConnection
source§fn default() -> DatabaseConnection
fn default() -> DatabaseConnection
Returns the “default value” for a type. Read more
source§impl<'c> IntoSchemaManagerConnection<'c> for &'c DatabaseConnection
impl<'c> IntoSchemaManagerConnection<'c> for &'c DatabaseConnection
fn into_schema_manager_connection(self) -> SchemaManagerConnection<'c>
source§impl StreamTrait for DatabaseConnection
impl StreamTrait for DatabaseConnection
§type Stream = QueryStream
type Stream = QueryStream
Create a stream for the QueryResult
source§impl TransactionTrait for DatabaseConnection
impl TransactionTrait for DatabaseConnection
source§fn transaction<'life0, 'async_trait, F, T, E>(
&'life0 self,
_callback: F
) -> Pin<Box<dyn Future<Output = Result<T, TransactionError<E>>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
F: for<'c> FnOnce(&'c DatabaseTransaction) -> Pin<Box<dyn Future<Output = Result<T, E>> + Send + 'c, Global>> + Send + 'async_trait,
T: Send + 'async_trait,
E: Error + Send + 'async_trait,
DatabaseConnection: 'async_trait,
fn transaction<'life0, 'async_trait, F, T, E>( &'life0 self, _callback: F ) -> Pin<Box<dyn Future<Output = Result<T, TransactionError<E>>> + Send + 'async_trait, Global>>where 'life0: 'async_trait, F: for<'c> FnOnce(&'c DatabaseTransaction) -> Pin<Box<dyn Future<Output = Result<T, E>> + Send + 'c, Global>> + Send + 'async_trait, T: Send + 'async_trait, E: Error + Send + 'async_trait, DatabaseConnection: 'async_trait,
Execute the function inside a transaction. If the function returns an error, the transaction will be rolled back. If it does not return an error, the transaction will be committed.
source§fn transaction_with_config<'life0, 'async_trait, F, T, E>(
&'life0 self,
_callback: F,
_isolation_level: Option<IsolationLevel>,
_access_mode: Option<AccessMode>
) -> Pin<Box<dyn Future<Output = Result<T, TransactionError<E>>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
F: for<'c> FnOnce(&'c DatabaseTransaction) -> Pin<Box<dyn Future<Output = Result<T, E>> + Send + 'c, Global>> + Send + 'async_trait,
T: Send + 'async_trait,
E: Error + Send + 'async_trait,
DatabaseConnection: 'async_trait,
fn transaction_with_config<'life0, 'async_trait, F, T, E>( &'life0 self, _callback: F, _isolation_level: Option<IsolationLevel>, _access_mode: Option<AccessMode> ) -> Pin<Box<dyn Future<Output = Result<T, TransactionError<E>>> + Send + 'async_trait, Global>>where 'life0: 'async_trait, F: for<'c> FnOnce(&'c DatabaseTransaction) -> Pin<Box<dyn Future<Output = Result<T, E>> + Send + 'c, Global>> + Send + 'async_trait, T: Send + 'async_trait, E: Error + Send + 'async_trait, DatabaseConnection: 'async_trait,
Execute the function inside a transaction. If the function returns an error, the transaction will be rolled back. If it does not return an error, the transaction will be committed.
source§fn begin<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Result<DatabaseTransaction, DbErr>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
DatabaseConnection: 'async_trait,
fn begin<'life0, 'async_trait>( &'life0 self ) -> Pin<Box<dyn Future<Output = Result<DatabaseTransaction, DbErr>> + Send + 'async_trait, Global>>where 'life0: 'async_trait, DatabaseConnection: 'async_trait,
Execute SQL
BEGIN
transaction.
Returns a Transaction that can be committed or rolled backsource§fn begin_with_config<'life0, 'async_trait>(
&'life0 self,
_isolation_level: Option<IsolationLevel>,
_access_mode: Option<AccessMode>
) -> Pin<Box<dyn Future<Output = Result<DatabaseTransaction, DbErr>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
DatabaseConnection: 'async_trait,
fn begin_with_config<'life0, 'async_trait>( &'life0 self, _isolation_level: Option<IsolationLevel>, _access_mode: Option<AccessMode> ) -> Pin<Box<dyn Future<Output = Result<DatabaseTransaction, DbErr>> + Send + 'async_trait, Global>>where 'life0: 'async_trait, DatabaseConnection: 'async_trait,
Execute SQL
BEGIN
transaction with isolation level and/or access mode.
Returns a Transaction that can be committed or rolled back