Trait diesel::query_builder::QueryFragment
[−]
[src]
pub trait QueryFragment<DB: Backend> { fn to_sql(&self, out: &mut DB::QueryBuilder) -> BuildQueryResult; fn collect_binds(&self, out: &mut DB::BindCollector) -> QueryResult<()>; fn is_safe_to_cache_prepared(&self) -> bool; }
An untyped fragment of SQL. This may be a complete SQL command (such as
an update statement without a RETURNING
clause), or a subsection (such as
our internal types used to represent a WHERE
clause). All methods on
Connection
that execute a query require this
trait to be implemented.
Required Methods
fn to_sql(&self, out: &mut DB::QueryBuilder) -> BuildQueryResult
fn collect_binds(&self, out: &mut DB::BindCollector) -> QueryResult<()>
fn is_safe_to_cache_prepared(&self) -> bool
Trait Implementations
impl<DB> QueryId for QueryFragment<DB>
[src]
Implementors
impl<T, DB> QueryFragment<DB> for Max<T> where T: Expression + QueryFragment<DB>,
DB: Backend + HasSqlType<T::SqlType>impl<T, DB> QueryFragment<DB> for Min<T> where T: Expression + QueryFragment<DB>,
DB: Backend + HasSqlType<T::SqlType>impl<T, DB> QueryFragment<DB> for Sum<T> where T: Expression + QueryFragment<DB>,
DB: Backend + HasSqlType<T::SqlType>impl<T, DB> QueryFragment<DB> for Avg<T> where T: Expression + QueryFragment<DB>,
DB: Backend + HasSqlType<T::SqlType>impl<DB: Backend> QueryFragment<DB> for now
impl<T, DB> QueryFragment<DB> for IsNull<T> where DB: Backend,
T: QueryFragment<DB>impl<T, DB> QueryFragment<DB> for IsNotNull<T> where DB: Backend,
T: QueryFragment<DB>impl<T, DB> QueryFragment<DB> for Asc<T> where DB: Backend,
T: QueryFragment<DB>impl<T, DB> QueryFragment<DB> for Desc<T> where DB: Backend,
T: QueryFragment<DB>impl<ST, DB> QueryFragment<DB> for SqlLiteral<ST> where DB: Backend + HasSqlType<ST>
impl<DB: Backend> QueryFragment<DB> for NoWhereClause
impl<DB, Expr> QueryFragment<DB> for WhereClause<Expr> where DB: Backend,
Expr: QueryFragment<DB>impl<T, U, Op, Ret, DB> QueryFragment<DB> for InsertStatement<T, U, Op, Ret> where DB: Backend,
T: Table,
T::FromClause: QueryFragment<DB>,
U: Insertable<T, DB> + Copy,
Op: QueryFragment<DB>,
Ret: QueryFragment<DB>impl<DB: Backend> QueryFragment<DB> for Insert
impl<T, U, V, DB> QueryFragment<DB> for UpdateStatement<T, U, V> where DB: Backend,
T: Table,
T::FromClause: QueryFragment<DB>,
U: QueryFragment<DB>,
V: Changeset<DB>impl<T: ?Sized, DB> QueryFragment<DB> for Box<T> where DB: Backend,
T: QueryFragment<DB>impl<'a, T: ?Sized, DB> QueryFragment<DB> for &'a T where DB: Backend,
T: QueryFragment<DB>impl<DB: Backend> QueryFragment<DB> for ()
impl<A: QueryFragment<DB>, DB: Backend> QueryFragment<DB> for (A,)
impl<A: QueryFragment<DB>, B: QueryFragment<DB>, DB: Backend> QueryFragment<DB> for (A, B)
impl<A: QueryFragment<DB>, B: QueryFragment<DB>, C: QueryFragment<DB>, DB: Backend> QueryFragment<DB> for (A, B, C)
impl<A: QueryFragment<DB>, B: QueryFragment<DB>, C: QueryFragment<DB>, D: QueryFragment<DB>, DB: Backend> QueryFragment<DB> for (A, B, C, D)
impl<A: QueryFragment<DB>, B: QueryFragment<DB>, C: QueryFragment<DB>, D: QueryFragment<DB>, E: QueryFragment<DB>, DB: Backend> QueryFragment<DB> for (A, B, C, D, E)
impl<A: QueryFragment<DB>, B: QueryFragment<DB>, C: QueryFragment<DB>, D: QueryFragment<DB>, E: QueryFragment<DB>, F: QueryFragment<DB>, DB: Backend> QueryFragment<DB> for (A, B, C, D, E, F)
impl<A: QueryFragment<DB>, B: QueryFragment<DB>, C: QueryFragment<DB>, D: QueryFragment<DB>, E: QueryFragment<DB>, F: QueryFragment<DB>, G: QueryFragment<DB>, DB: Backend> QueryFragment<DB> for (A, B, C, D, E, F, G)
impl<A: QueryFragment<DB>, B: QueryFragment<DB>, C: QueryFragment<DB>, D: QueryFragment<DB>, E: QueryFragment<DB>, F: QueryFragment<DB>, G: QueryFragment<DB>, H: QueryFragment<DB>, DB: Backend> QueryFragment<DB> for (A, B, C, D, E, F, G, H)
impl<A: QueryFragment<DB>, B: QueryFragment<DB>, C: QueryFragment<DB>, D: QueryFragment<DB>, E: QueryFragment<DB>, F: QueryFragment<DB>, G: QueryFragment<DB>, H: QueryFragment<DB>, I: QueryFragment<DB>, DB: Backend> QueryFragment<DB> for (A, B, C, D, E, F, G, H, I)
impl<A: QueryFragment<DB>, B: QueryFragment<DB>, C: QueryFragment<DB>, D: QueryFragment<DB>, E: QueryFragment<DB>, F: QueryFragment<DB>, G: QueryFragment<DB>, H: QueryFragment<DB>, I: QueryFragment<DB>, J: QueryFragment<DB>, DB: Backend> QueryFragment<DB> for (A, B, C, D, E, F, G, H, I, J)
impl<A: QueryFragment<DB>, B: QueryFragment<DB>, C: QueryFragment<DB>, D: QueryFragment<DB>, E: QueryFragment<DB>, F: QueryFragment<DB>, G: QueryFragment<DB>, H: QueryFragment<DB>, I: QueryFragment<DB>, J: QueryFragment<DB>, K: QueryFragment<DB>, DB: Backend> QueryFragment<DB> for (A, B, C, D, E, F, G, H, I, J, K)
impl<A: QueryFragment<DB>, B: QueryFragment<DB>, C: QueryFragment<DB>, D: QueryFragment<DB>, E: QueryFragment<DB>, F: QueryFragment<DB>, G: QueryFragment<DB>, H: QueryFragment<DB>, I: QueryFragment<DB>, J: QueryFragment<DB>, K: QueryFragment<DB>, L: QueryFragment<DB>, DB: Backend> QueryFragment<DB> for (A, B, C, D, E, F, G, H, I, J, K, L)
impl<A: QueryFragment<DB>, B: QueryFragment<DB>, C: QueryFragment<DB>, D: QueryFragment<DB>, E: QueryFragment<DB>, F: QueryFragment<DB>, G: QueryFragment<DB>, H: QueryFragment<DB>, I: QueryFragment<DB>, J: QueryFragment<DB>, K: QueryFragment<DB>, L: QueryFragment<DB>, M: QueryFragment<DB>, DB: Backend> QueryFragment<DB> for (A, B, C, D, E, F, G, H, I, J, K, L, M)
impl<A: QueryFragment<DB>, B: QueryFragment<DB>, C: QueryFragment<DB>, D: QueryFragment<DB>, E: QueryFragment<DB>, F: QueryFragment<DB>, G: QueryFragment<DB>, H: QueryFragment<DB>, I: QueryFragment<DB>, J: QueryFragment<DB>, K: QueryFragment<DB>, L: QueryFragment<DB>, M: QueryFragment<DB>, N: QueryFragment<DB>, DB: Backend> QueryFragment<DB> for (A, B, C, D, E, F, G, H, I, J, K, L, M, N)
impl<A: QueryFragment<DB>, B: QueryFragment<DB>, C: QueryFragment<DB>, D: QueryFragment<DB>, E: QueryFragment<DB>, F: QueryFragment<DB>, G: QueryFragment<DB>, H: QueryFragment<DB>, I: QueryFragment<DB>, J: QueryFragment<DB>, K: QueryFragment<DB>, L: QueryFragment<DB>, M: QueryFragment<DB>, N: QueryFragment<DB>, O: QueryFragment<DB>, DB: Backend> QueryFragment<DB> for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O)
impl<A: QueryFragment<DB>, B: QueryFragment<DB>, C: QueryFragment<DB>, D: QueryFragment<DB>, E: QueryFragment<DB>, F: QueryFragment<DB>, G: QueryFragment<DB>, H: QueryFragment<DB>, I: QueryFragment<DB>, J: QueryFragment<DB>, K: QueryFragment<DB>, L: QueryFragment<DB>, M: QueryFragment<DB>, N: QueryFragment<DB>, O: QueryFragment<DB>, P: QueryFragment<DB>, DB: Backend> QueryFragment<DB> for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P)