pub struct DatabaseTransaction { /* private fields */ }Expand description
Defines a database transaction, whether it is an open transaction and the type of backend to use. Under the hood, a Transaction is just a wrapper for a connection where START TRANSACTION has been executed.
Implementationsยง
Trait Implementationsยง
Sourceยงimpl ConnectionTrait for DatabaseTransaction
impl ConnectionTrait for DatabaseTransaction
Sourceยงfn get_database_backend(&self) -> DbBackend
fn get_database_backend(&self) -> DbBackend
Get the database backend for the connection. This depends on feature flags enabled.
Sourceยงfn execute_raw(&self, stmt: Statement) -> Result<ExecResult, DbErr>
fn execute_raw(&self, stmt: Statement) -> Result<ExecResult, DbErr>
Execute a Statement
Sourceยงfn execute_unprepared(&self, sql: &str) -> Result<ExecResult, DbErr>
fn execute_unprepared(&self, sql: &str) -> Result<ExecResult, DbErr>
Execute a unprepared Statement
Sourceยงfn query_one_raw(&self, stmt: Statement) -> Result<Option<QueryResult>, DbErr>
fn query_one_raw(&self, stmt: Statement) -> Result<Option<QueryResult>, DbErr>
Execute a Statement and return a single row of
QueryResultSourceยงfn query_all_raw(&self, stmt: Statement) -> Result<Vec<QueryResult>, DbErr>
fn query_all_raw(&self, stmt: Statement) -> Result<Vec<QueryResult>, DbErr>
Execute a Statement and return a vector of
QueryResultSourceยงfn execute<S: StatementBuilder>(&self, stmt: &S) -> Result<ExecResult, DbErr>
fn execute<S: StatementBuilder>(&self, stmt: &S) -> Result<ExecResult, DbErr>
Execute a [QueryStatement]
Sourceยงfn query_one<S: StatementBuilder>(
&self,
stmt: &S,
) -> Result<Option<QueryResult>, DbErr>
fn query_one<S: StatementBuilder>( &self, stmt: &S, ) -> Result<Option<QueryResult>, DbErr>
Execute a [QueryStatement] and return a single row of
QueryResultSourceยงfn query_all<S: StatementBuilder>(
&self,
stmt: &S,
) -> Result<Vec<QueryResult>, DbErr>
fn query_all<S: StatementBuilder>( &self, stmt: &S, ) -> Result<Vec<QueryResult>, DbErr>
Execute a [QueryStatement] and return a vector of
QueryResultSourceยง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 DatabaseTransaction
impl Debug for DatabaseTransaction
Sourceยงimpl Drop for DatabaseTransaction
impl Drop for DatabaseTransaction
Sourceยงimpl StreamTrait for DatabaseTransaction
impl StreamTrait for DatabaseTransaction
Sourceยงtype Stream<'a> = TransactionStream<'a>
type Stream<'a> = TransactionStream<'a>
Create a stream for the QueryResult
Sourceยงfn get_database_backend(&self) -> DbBackend
fn get_database_backend(&self) -> DbBackend
Get the database backend for the connection. This depends on feature flags enabled.
Sourceยงimpl TransactionTrait for DatabaseTransaction
impl TransactionTrait for DatabaseTransaction
Sourceยงfn transaction<F, T, E>(&self, _callback: F) -> Result<T, TransactionError<E>>
fn transaction<F, T, E>(&self, _callback: F) -> Result<T, TransactionError<E>>
Execute the function inside a transaction. If the function returns an error, the transaction will be rolled back. Otherwise, the transaction will be committed.
Sourceยงfn transaction_with_config<F, T, E>(
&self,
_callback: F,
isolation_level: Option<IsolationLevel>,
access_mode: Option<AccessMode>,
) -> Result<T, TransactionError<E>>
fn transaction_with_config<F, T, E>( &self, _callback: F, isolation_level: Option<IsolationLevel>, access_mode: Option<AccessMode>, ) -> Result<T, TransactionError<E>>
Execute the function inside a transaction. If the function returns an error, the transaction will be rolled back. Otherwise, the transaction will be committed.
Sourceยงtype Transaction = DatabaseTransaction
type Transaction = DatabaseTransaction
The concrete type for the transaction
Sourceยงfn begin(&self) -> Result<DatabaseTransaction, DbErr>
fn begin(&self) -> Result<DatabaseTransaction, DbErr>
Execute SQL
BEGIN transaction.
Returns a Transaction that can be committed or rolled backSourceยงfn begin_with_config(
&self,
isolation_level: Option<IsolationLevel>,
access_mode: Option<AccessMode>,
) -> Result<DatabaseTransaction, DbErr>
fn begin_with_config( &self, isolation_level: Option<IsolationLevel>, access_mode: Option<AccessMode>, ) -> Result<DatabaseTransaction, DbErr>
Execute SQL
BEGIN transaction with isolation level and/or access mode.
Returns a Transaction that can be committed or rolled backAuto Trait Implementationsยง
impl Freeze for DatabaseTransaction
impl !RefUnwindSafe for DatabaseTransaction
impl !Send for DatabaseTransaction
impl !Sync for DatabaseTransaction
impl Unpin for DatabaseTransaction
impl !UnwindSafe for DatabaseTransaction
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
Sourceยงimpl<T> Instrument for T
impl<T> Instrument for T
Sourceยงfn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Sourceยงfn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Sourceยงimpl<T> IntoEither for T
impl<T> IntoEither for T
Sourceยงfn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSourceยงfn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more