Struct AnyConnection
pub struct AnyConnection {
    pub(crate) backend: Box<dyn AnyConnectionBackend>,
}Expand description
A connection to any SQLx database.
The database driver used is determined by the scheme of the connection url.
postgres://postgres@localhost/test
sqlite://a.sqliteFields§
§backend: Box<dyn AnyConnectionBackend>Implementations§
§impl AnyConnection
 
impl AnyConnection
pub fn backend_name(&self) -> &str
pub fn backend_name(&self) -> &str
Returns the name of the database backend in use (e.g. PostgreSQL, MySQL, SQLite, etc.)
Trait Implementations§
§impl<'c> Acquire<'c> for &'c mut AnyConnection
 
impl<'c> Acquire<'c> for &'c mut AnyConnection
type Database = Any
type Connection = &'c mut <Any as Database>::Connection
fn acquire( self, ) -> Pin<Box<dyn Future<Output = Result<<&'c mut AnyConnection as Acquire<'c>>::Connection, Error>> + Send + 'c>>
fn begin( self, ) -> Pin<Box<dyn Future<Output = Result<Transaction<'c, Any>, Error>> + Send + 'c>>
§impl Connection for AnyConnection
 
impl Connection for AnyConnection
type Database = Any
type Options = AnyConnectOptions
§fn close(self) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send>>
 
fn close(self) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send>>
Explicitly close this database connection. Read more
§fn ping(
    &mut self,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + '_>>
 
fn ping( &mut self, ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + '_>>
Checks if a connection to the database is still valid.
§fn begin(
    &mut self,
) -> Pin<Box<dyn Future<Output = Result<Transaction<'_, <AnyConnection as Connection>::Database>, Error>> + Send + '_>>where
    AnyConnection: Sized,
 
fn begin(
    &mut self,
) -> Pin<Box<dyn Future<Output = Result<Transaction<'_, <AnyConnection as Connection>::Database>, Error>> + Send + '_>>where
    AnyConnection: Sized,
Begin a new transaction or establish a savepoint within the active transaction. Read more
§fn cached_statements_size(&self) -> usize
 
fn cached_statements_size(&self) -> usize
The number of statements currently cached in the connection.
§fn clear_cached_statements(
    &mut self,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + '_>>
 
fn clear_cached_statements( &mut self, ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + '_>>
Removes all statements from the cache, closing them on the server if
needed.
§fn shrink_buffers(&mut self)
 
fn shrink_buffers(&mut self)
Restore any buffers in the connection to their default capacity, if possible. Read more
§fn transaction<'a, F, R, E>(
    &'a mut self,
    callback: F,
) -> Pin<Box<dyn Future<Output = Result<R, E>> + Send + 'a>>
 
fn transaction<'a, F, R, E>( &'a mut self, callback: F, ) -> Pin<Box<dyn Future<Output = Result<R, E>> + Send + 'a>>
Execute the function inside a transaction. Read more
§impl Debug for AnyConnection
 
impl Debug for AnyConnection
§impl<'c> Executor<'c> for &'c mut AnyConnection
 
impl<'c> Executor<'c> for &'c mut AnyConnection
type Database = Any
§fn fetch_many<'e, 'q, E>(
    self,
    query: E,
) -> Pin<Box<dyn Stream<Item = Result<Either<AnyQueryResult, AnyRow>, Error>> + Send + 'e>>
 
fn fetch_many<'e, 'q, E>( self, query: E, ) -> Pin<Box<dyn Stream<Item = Result<Either<AnyQueryResult, AnyRow>, Error>> + Send + 'e>>
Execute multiple queries and return the generated results as a stream
from each query, in a stream.
§fn fetch_optional<'e, 'q, E>(
    self,
    query: E,
) -> Pin<Box<dyn Future<Output = Result<Option<AnyRow>, Error>> + Send + 'e>>
 
fn fetch_optional<'e, 'q, E>( self, query: E, ) -> Pin<Box<dyn Future<Output = Result<Option<AnyRow>, Error>> + Send + 'e>>
Execute the query and returns at most one row.
§fn prepare_with<'e, 'q>(
    self,
    sql: &'q str,
    parameters: &[AnyTypeInfo],
) -> Pin<Box<dyn Future<Output = Result<AnyStatement<'q>, Error>> + Send + 'e>>where
    'q: 'e,
    'c: 'e,
 
fn prepare_with<'e, 'q>(
    self,
    sql: &'q str,
    parameters: &[AnyTypeInfo],
) -> Pin<Box<dyn Future<Output = Result<AnyStatement<'q>, Error>> + Send + 'e>>where
    'q: 'e,
    'c: 'e,
Prepare the SQL query, with parameter type information, to inspect the
type information about its parameters and results. Read more
§fn execute<'e, 'q, E>(
    self,
    query: E,
) -> Pin<Box<dyn Future<Output = Result<<Self::Database as Database>::QueryResult, Error>> + Send + 'e>>
 
fn execute<'e, 'q, E>( self, query: E, ) -> Pin<Box<dyn Future<Output = Result<<Self::Database as Database>::QueryResult, Error>> + Send + 'e>>
Execute the query and return the total number of rows affected.
§fn execute_many<'e, 'q, E>(
    self,
    query: E,
) -> Pin<Box<dyn Stream<Item = Result<<Self::Database as Database>::QueryResult, Error>> + Send + 'e>>
 
fn execute_many<'e, 'q, E>( self, query: E, ) -> Pin<Box<dyn Stream<Item = Result<<Self::Database as Database>::QueryResult, Error>> + Send + 'e>>
Execute multiple queries and return the rows affected from each query, in a stream.
§fn fetch<'e, 'q, E>(
    self,
    query: E,
) -> Pin<Box<dyn Stream<Item = Result<<Self::Database as Database>::Row, Error>> + Send + 'e>>
 
fn fetch<'e, 'q, E>( self, query: E, ) -> Pin<Box<dyn Stream<Item = Result<<Self::Database as Database>::Row, Error>> + Send + 'e>>
Execute the query and return the generated results as a stream.
§fn fetch_all<'e, 'q, E>(
    self,
    query: E,
) -> Pin<Box<dyn Future<Output = Result<Vec<<Self::Database as Database>::Row>, Error>> + Send + 'e>>
 
fn fetch_all<'e, 'q, E>( self, query: E, ) -> Pin<Box<dyn Future<Output = Result<Vec<<Self::Database as Database>::Row>, Error>> + Send + 'e>>
Execute the query and return all the generated results, collected into a 
Vec.§impl Migrate for AnyConnection
 
impl Migrate for AnyConnection
fn ensure_migrations_table( &mut self, ) -> Pin<Box<dyn Future<Output = Result<(), MigrateError>> + Send + '_>>
fn dirty_version( &mut self, ) -> Pin<Box<dyn Future<Output = Result<Option<i64>, MigrateError>> + Send + '_>>
fn list_applied_migrations( &mut self, ) -> Pin<Box<dyn Future<Output = Result<Vec<AppliedMigration>, MigrateError>> + Send + '_>>
fn lock( &mut self, ) -> Pin<Box<dyn Future<Output = Result<(), MigrateError>> + Send + '_>>
fn unlock( &mut self, ) -> Pin<Box<dyn Future<Output = Result<(), MigrateError>> + Send + '_>>
fn apply<'e, 'm>(
    &'e mut self,
    migration: &'m Migration,
) -> Pin<Box<dyn Future<Output = Result<Duration, MigrateError>> + Send + 'm>>where
    'e: 'm,
fn revert<'e, 'm>(
    &'e mut self,
    migration: &'m Migration,
) -> Pin<Box<dyn Future<Output = Result<Duration, MigrateError>> + Send + 'm>>where
    'e: 'm,
Auto Trait Implementations§
impl Freeze for AnyConnection
impl !RefUnwindSafe for AnyConnection
impl Send for AnyConnection
impl !Sync for AnyConnection
impl Unpin for AnyConnection
impl !UnwindSafe for AnyConnection
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
§impl<T> Instrument for T
 
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
 
fn instrument(self, span: Span) -> Instrumented<Self>
§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