Module diesel::query_builder [] [src]

Contains traits responsible for the actual construction of SQL statements

The types in this module are part of Diesel's public API, but are generally only useful for implementing Diesel plugins. Applications should generally not need to care about the types inside of this module.

Reexports

pub use self::bind_collector::BindCollector;

Modules

bind_collector
insert_statement
update_statement
where_clause

Structs

AstPass

The primary type used when walking a Diesel AST during query execution.

DebugQuery

A struct that implements fmt::Display and fmt::Debug to show the SQL representation of a query.

IncompleteDefaultInsertStatement

The structure returned by insert_default_values. The only thing that can be done with it is call into.

IncompleteInsertStatement

The structure returned by insert. The only thing that can be done with it is call into.

IncompleteUpdateStatement

The type returned by update. The only thing you can do with this type is call set on it.

UpdateStatement

Traits

AsChangeset

Types which can be passed to update.set.

AsQuery

Types that can be converted into a complete, typed SQL query. This is used internally to automatically add the right select clause when none is specified, or to automatically add RETURNING * in certain contexts

Changeset

Apps should not need to concern themselves with this trait.

IntoUpdateTarget

A type which can be passed to update.

Query

A complete SQL query with a return type. This can be a select statement, or a command such as update or insert with a RETURNING clause. Unlike Expression, types implementing this trait are guaranteed to be executable on their own.

QueryBuilder

Apps should not need to concern themselves with this trait.

QueryFragment

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.

QueryId

Functions

debug_query

Takes a query QueryFragment expression as an argument and returns a type that implements fmt::Display and fmt::Debug to show the query.

Type Definitions

BuildQueryResult