[][src]Struct diesel::prelude::SqliteConnection

pub struct SqliteConnection { /* fields omitted */ }

Connections for the SQLite backend. Unlike other backends, "connection URLs" for SQLite are file paths, URIs, or special identifiers like :memory:.

Methods

impl SqliteConnection
[src]

pub fn immediate_transaction<T, E, F>(&self, f: F) -> Result<T, E> where
    F: FnOnce() -> Result<T, E>,
    E: From<Error>, 
[src]

Run a transaction with BEGIN IMMEDIATE

This method will return an error if a transaction is already open.

Example

conn.immediate_transaction(|| {
    // Do stuff in a transaction
    Ok(())
})

pub fn exclusive_transaction<T, E, F>(&self, f: F) -> Result<T, E> where
    F: FnOnce() -> Result<T, E>,
    E: From<Error>, 
[src]

Run a transaction with BEGIN EXCLUSIVE

This method will return an error if a transaction is already open.

Example

conn.exclusive_transaction(|| {
    // Do stuff in a transaction
    Ok(())
})

Trait Implementations

impl SimpleConnection for SqliteConnection
[src]

impl Connection for SqliteConnection
[src]

type Backend = Sqlite

The backend this type connects to

type TransactionManager = AnsiTransactionManager

fn transaction<T, E, F>(&self, f: F) -> Result<T, E> where
    F: FnOnce() -> Result<T, E>,
    E: From<Error>, 
[src]

Executes the given function inside of a database transaction Read more

fn begin_test_transaction(&self) -> QueryResult<()>
[src]

Creates a transaction that will never be committed. This is useful for tests. Panics if called while inside of a transaction. Read more

fn test_transaction<T, E, F>(&self, f: F) -> T where
    F: FnOnce() -> Result<T, E>,
    E: Debug
[src]

Executes the given function inside a transaction, but does not commit it. Panics if the given function returns an error. Read more

impl<'a, T, U, Op> ExecuteDsl<SqliteConnection, <SqliteConnection as Connection>::Backend> for InsertStatement<T, &'a [U], Op> where
    &'a U: Insertable<T>,
    InsertStatement<T, <&'a U as Insertable<T>>::Values, Op>: QueryFragment<Sqlite>,
    T: Copy,
    Op: Copy
[src]

impl<'a, T, U, Op> ExecuteDsl<SqliteConnection, <SqliteConnection as Connection>::Backend> for InsertStatement<T, BatchInsert<'a, U, T>, Op> where
    InsertStatement<T, &'a [U], Op>: ExecuteDsl<SqliteConnection>, 
[src]

impl<T, U, Op> ExecuteDsl<SqliteConnection, <SqliteConnection as Connection>::Backend> for InsertStatement<T, OwnedBatchInsert<ValuesClause<U, T>, T>, Op> where
    InsertStatement<T, ValuesClause<U, T>, Op>: QueryFragment<Sqlite>,
    T: Copy,
    Op: Copy
[src]

impl<Changes, Output> UpdateAndFetchResults<Changes, Output> for SqliteConnection where
    Changes: Copy + Identifiable,
    Changes: AsChangeset<Target = <Changes as HasTable>::Table> + IntoUpdateTarget,
    Changes::Table: FindDsl<Changes::Id>,
    Update<Changes, Changes>: ExecuteDsl<SqliteConnection>,
    Find<Changes::Table, Changes::Id>: LoadQuery<SqliteConnection, Output>, 
[src]

impl Send for SqliteConnection
[src]

Auto Trait Implementations

Blanket Implementations

impl<T> IntoSql for T
[src]

fn into_sql<T>(self) -> AsExprOf<Self, T> where
    Self: AsExpression<T> + Sized
[src]

Convert self to an expression for Diesel's query builder. Read more

fn as_sql<'a, T>(&'a self) -> AsExprOf<&'a Self, T> where
    &'a Self: AsExpression<T>, 
[src]

Convert &self to an expression for Diesel's query builder. Read more

impl<T> From for T
[src]

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom for T where
    T: From<U>, 
[src]

type Error = !

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

impl<T> Any for T where
    T: 'static + ?Sized
[src]