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 nowimpl<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 NoWhereClauseimpl<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 Insertimpl<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)