QueryBuilder

Trait QueryBuilder 

pub trait QueryBuilder:
    QuotedBuilder
    + EscapeBuilder
    + TableRefBuilder
    + OperLeftAssocDecider
    + PrecedenceDecider
    + Sized {
Show 68 methods // Required methods fn prepare_query_statement( &self, query: &SubQueryStatement, sql: &mut impl SqlWriter, ); fn prepare_select_into( &self, into_table: &SelectInto, sql: &mut impl SqlWriter, ); fn prepare_value(&self, value: Value, sql: &mut impl SqlWriter); // Provided methods fn placeholder(&self) -> (&'static str, bool) { ... } fn values_list_tuple_prefix(&self) -> &str { ... } fn prepare_insert_statement( &self, insert: &InsertStatement, sql: &mut impl SqlWriter, ) { ... } fn prepare_insert_statement_common( &self, insert: &InsertStatement, sql: &mut impl SqlWriter, ) { ... } fn prepare_union_statement( &self, union_type: UnionType, select_statement: &SelectStatement, sql: &mut impl SqlWriter, ) { ... } fn prepare_select_statement( &self, select: &SelectStatement, sql: &mut impl SqlWriter, ) { ... } fn prepare_select_limit_offset( &self, select: &SelectStatement, sql: &mut impl SqlWriter, ) { ... } fn prepare_update_statement( &self, update: &UpdateStatement, sql: &mut impl SqlWriter, ) { ... } fn prepare_update_join( &self, _: &[TableRef], _: &ConditionHolder, _: &mut impl SqlWriter, ) { ... } fn prepare_update_from(&self, from: &[TableRef], sql: &mut impl SqlWriter) { ... } fn prepare_update_column( &self, _: &Option<Box<TableRef>>, _: &[TableRef], column: &DynIden, sql: &mut impl SqlWriter, ) { ... } fn prepare_update_condition( &self, _: &[TableRef], condition: &ConditionHolder, sql: &mut impl SqlWriter, ) { ... } fn prepare_update_order_by( &self, update: &UpdateStatement, sql: &mut impl SqlWriter, ) { ... } fn prepare_update_limit( &self, update: &UpdateStatement, sql: &mut impl SqlWriter, ) { ... } fn prepare_delete_statement( &self, delete: &DeleteStatement, sql: &mut impl SqlWriter, ) { ... } fn prepare_delete_order_by( &self, delete: &DeleteStatement, sql: &mut impl SqlWriter, ) { ... } fn prepare_delete_limit( &self, delete: &DeleteStatement, sql: &mut impl SqlWriter, ) { ... } fn prepare_expr(&self, simple_expr: &Expr, sql: &mut impl SqlWriter) { ... } fn prepare_expr_common(&self, simple_expr: &Expr, sql: &mut impl SqlWriter) { ... } fn prepare_case_statement( &self, stmts: &CaseStatement, sql: &mut impl SqlWriter, ) { ... } fn prepare_select_distinct( &self, select_distinct: &SelectDistinct, sql: &mut impl SqlWriter, ) { ... } fn prepare_index_hints( &self, _table_ref: &TableRef, _select: &SelectStatement, _sql: &mut impl SqlWriter, ) { ... } fn prepare_table_sample( &self, _select: &SelectStatement, _sql: &mut impl SqlWriter, ) { ... } fn prepare_select_lock(&self, lock: &LockClause, sql: &mut impl SqlWriter) { ... } fn prepare_select_expr( &self, select_expr: &SelectExpr, sql: &mut impl SqlWriter, ) { ... } fn prepare_join_expr(&self, join_expr: &JoinExpr, sql: &mut impl SqlWriter) { ... } fn prepare_join_table_ref( &self, join_expr: &JoinExpr, sql: &mut impl SqlWriter, ) { ... } fn prepare_table_ref(&self, table_ref: &TableRef, sql: &mut impl SqlWriter) { ... } fn prepare_column_ref( &self, column_ref: &ColumnRef, sql: &mut impl SqlWriter, ) { ... } fn prepare_un_oper(&self, un_oper: &UnOper, sql: &mut impl SqlWriter) { ... } fn prepare_bin_oper_common( &self, bin_oper: &BinOper, sql: &mut impl SqlWriter, ) { ... } fn prepare_bin_oper(&self, bin_oper: &BinOper, sql: &mut impl SqlWriter) { ... } fn prepare_sub_query_oper( &self, oper: &SubQueryOper, sql: &mut impl SqlWriter, ) { ... } fn prepare_logical_chain_oper( &self, log_chain_oper: &LogicalChainOper, i: usize, length: usize, sql: &mut impl SqlWriter, ) { ... } fn prepare_function_name_common( &self, function: &Func, sql: &mut impl SqlWriter, ) { ... } fn prepare_function_arguments( &self, func: &FunctionCall, sql: &mut impl SqlWriter, ) { ... } fn prepare_with_query(&self, query: &WithQuery, sql: &mut impl SqlWriter) { ... } fn prepare_with_clause( &self, with_clause: &WithClause, sql: &mut impl SqlWriter, ) { ... } fn prepare_with_clause_recursive_options( &self, with_clause: &WithClause, sql: &mut impl SqlWriter, ) { ... } fn prepare_with_clause_common_tables( &self, with_clause: &WithClause, sql: &mut impl SqlWriter, ) { ... } fn prepare_with_query_clause_common_table( &self, cte: &CommonTableExpression, sql: &mut impl SqlWriter, ) { ... } fn prepare_with_query_clause_materialization( &self, cte: &CommonTableExpression, sql: &mut impl SqlWriter, ) { ... } fn prepare_with_clause_start( &self, with_clause: &WithClause, sql: &mut impl SqlWriter, ) { ... } fn prepare_insert(&self, replace: bool, sql: &mut impl SqlWriter) { ... } fn prepare_function_name(&self, function: &Func, sql: &mut impl SqlWriter) { ... } fn prepare_type_ref(&self, type_name: &TypeRef, sql: &mut impl SqlWriter) { ... } fn prepare_join_type(&self, join_type: &JoinType, sql: &mut impl SqlWriter) { ... } fn prepare_join_type_common( &self, join_type: &JoinType, sql: &mut impl SqlWriter, ) { ... } fn prepare_order_expr( &self, order_expr: &OrderExpr, sql: &mut impl SqlWriter, ) { ... } fn prepare_join_on(&self, join_on: &JoinOn, sql: &mut impl SqlWriter) { ... } fn prepare_order(&self, order_expr: &OrderExpr, sql: &mut impl SqlWriter) { ... } fn prepare_field_order( &self, order_expr: &OrderExpr, values: &Values, sql: &mut impl SqlWriter, ) { ... } fn prepare_constant(&self, value: &Value, sql: &mut impl SqlWriter) { ... } fn prepare_values_list( &self, value_tuples: &[ValueTuple], sql: &mut impl SqlWriter, ) { ... } fn prepare_values_rows(&self, values: &[Values], sql: &mut impl SqlWriter) { ... } fn prepare_tuple(&self, exprs: &[Expr], sql: &mut impl SqlWriter) { ... } fn prepare_keyword(&self, keyword: &Keyword, sql: &mut impl SqlWriter) { ... } fn value_to_string(&self, v: &Value) -> String { ... } fn value_to_string_common(&self, v: &Value) -> String { ... } fn prepare_on_conflict_action_common( &self, on_conflict_action: &Option<OnConflictAction>, sql: &mut impl SqlWriter, ) { ... } fn write_string_quoted(&self, string: &str, buffer: &mut impl Write) { ... } fn insert_default_keyword(&self) -> &str { ... } fn insert_default_values(&self, num_rows: u32, sql: &mut impl SqlWriter) { ... } fn prepare_constant_true(&self, sql: &mut impl SqlWriter) { ... } fn prepare_constant_false(&self, sql: &mut impl SqlWriter) { ... }
}

Required Methods§

fn prepare_query_statement( &self, query: &SubQueryStatement, sql: &mut impl SqlWriter, )

Translate QueryStatement into SQL statement.

fn prepare_select_into(&self, into_table: &SelectInto, sql: &mut impl SqlWriter)

fn prepare_value(&self, value: Value, sql: &mut impl SqlWriter)

Write Value into SQL statement as parameter.

Provided Methods§

fn placeholder(&self) -> (&'static str, bool)

The type of placeholder the builder uses for values, and whether it is numbered.

fn values_list_tuple_prefix(&self) -> &str

Prefix for tuples in VALUES list (e.g. ROW for MySQL)

fn prepare_insert_statement( &self, insert: &InsertStatement, sql: &mut impl SqlWriter, )

Translate InsertStatement into SQL statement.

fn prepare_insert_statement_common( &self, insert: &InsertStatement, sql: &mut impl SqlWriter, )

Common implementation of [prepare_insert_statement] shared among backends.

fn prepare_union_statement( &self, union_type: UnionType, select_statement: &SelectStatement, sql: &mut impl SqlWriter, )

fn prepare_select_statement( &self, select: &SelectStatement, sql: &mut impl SqlWriter, )

Translate SelectStatement into SQL statement.

fn prepare_select_limit_offset( &self, select: &SelectStatement, sql: &mut impl SqlWriter, )

fn prepare_update_statement( &self, update: &UpdateStatement, sql: &mut impl SqlWriter, )

Translate UpdateStatement into SQL statement.

fn prepare_update_join( &self, _: &[TableRef], _: &ConditionHolder, _: &mut impl SqlWriter, )

fn prepare_update_from(&self, from: &[TableRef], sql: &mut impl SqlWriter)

fn prepare_update_column( &self, _: &Option<Box<TableRef>>, _: &[TableRef], column: &DynIden, sql: &mut impl SqlWriter, )

fn prepare_update_condition( &self, _: &[TableRef], condition: &ConditionHolder, sql: &mut impl SqlWriter, )

fn prepare_update_order_by( &self, update: &UpdateStatement, sql: &mut impl SqlWriter, )

Translate ORDER BY expression in UpdateStatement.

fn prepare_update_limit( &self, update: &UpdateStatement, sql: &mut impl SqlWriter, )

Translate LIMIT expression in UpdateStatement.

fn prepare_delete_statement( &self, delete: &DeleteStatement, sql: &mut impl SqlWriter, )

Translate DeleteStatement into SQL statement.

fn prepare_delete_order_by( &self, delete: &DeleteStatement, sql: &mut impl SqlWriter, )

Translate ORDER BY expression in DeleteStatement.

fn prepare_delete_limit( &self, delete: &DeleteStatement, sql: &mut impl SqlWriter, )

Translate LIMIT expression in DeleteStatement.

fn prepare_expr(&self, simple_expr: &Expr, sql: &mut impl SqlWriter)

Translate Expr into SQL statement.

fn prepare_expr_common(&self, simple_expr: &Expr, sql: &mut impl SqlWriter)

fn prepare_case_statement( &self, stmts: &CaseStatement, sql: &mut impl SqlWriter, )

Translate CaseStatement into SQL statement.

fn prepare_select_distinct( &self, select_distinct: &SelectDistinct, sql: &mut impl SqlWriter, )

Translate SelectDistinct into SQL statement.

fn prepare_index_hints( &self, _table_ref: &TableRef, _select: &SelectStatement, _sql: &mut impl SqlWriter, )

Translate IndexHint into SQL statement.

fn prepare_table_sample( &self, _select: &SelectStatement, _sql: &mut impl SqlWriter, )

Translate TableSample into SQL statement.

fn prepare_select_lock(&self, lock: &LockClause, sql: &mut impl SqlWriter)

Translate LockType into SQL statement.

fn prepare_select_expr( &self, select_expr: &SelectExpr, sql: &mut impl SqlWriter, )

Translate SelectExpr into SQL statement.

fn prepare_join_expr(&self, join_expr: &JoinExpr, sql: &mut impl SqlWriter)

Translate JoinExpr into SQL statement.

fn prepare_join_table_ref(&self, join_expr: &JoinExpr, sql: &mut impl SqlWriter)

fn prepare_table_ref(&self, table_ref: &TableRef, sql: &mut impl SqlWriter)

Translate TableRef into SQL statement.

fn prepare_column_ref(&self, column_ref: &ColumnRef, sql: &mut impl SqlWriter)

fn prepare_un_oper(&self, un_oper: &UnOper, sql: &mut impl SqlWriter)

Translate UnOper into SQL statement.

fn prepare_bin_oper_common(&self, bin_oper: &BinOper, sql: &mut impl SqlWriter)

fn prepare_bin_oper(&self, bin_oper: &BinOper, sql: &mut impl SqlWriter)

Translate BinOper into SQL statement.

fn prepare_sub_query_oper(&self, oper: &SubQueryOper, sql: &mut impl SqlWriter)

Translate SubQueryOper into SQL statement.

fn prepare_logical_chain_oper( &self, log_chain_oper: &LogicalChainOper, i: usize, length: usize, sql: &mut impl SqlWriter, )

Translate LogicalChainOper into SQL statement.

fn prepare_function_name_common( &self, function: &Func, sql: &mut impl SqlWriter, )

Translate Function into SQL statement.

fn prepare_function_arguments( &self, func: &FunctionCall, sql: &mut impl SqlWriter, )

fn prepare_with_query(&self, query: &WithQuery, sql: &mut impl SqlWriter)

fn prepare_with_clause( &self, with_clause: &WithClause, sql: &mut impl SqlWriter, )

fn prepare_with_clause_recursive_options( &self, with_clause: &WithClause, sql: &mut impl SqlWriter, )

fn prepare_with_clause_common_tables( &self, with_clause: &WithClause, sql: &mut impl SqlWriter, )

fn prepare_with_query_clause_common_table( &self, cte: &CommonTableExpression, sql: &mut impl SqlWriter, )

fn prepare_with_query_clause_materialization( &self, cte: &CommonTableExpression, sql: &mut impl SqlWriter, )

fn prepare_with_clause_start( &self, with_clause: &WithClause, sql: &mut impl SqlWriter, )

fn prepare_insert(&self, replace: bool, sql: &mut impl SqlWriter)

fn prepare_function_name(&self, function: &Func, sql: &mut impl SqlWriter)

fn prepare_type_ref(&self, type_name: &TypeRef, sql: &mut impl SqlWriter)

Translate TypeRef into an SQL statement.

fn prepare_join_type(&self, join_type: &JoinType, sql: &mut impl SqlWriter)

Translate JoinType into SQL statement.

fn prepare_join_type_common( &self, join_type: &JoinType, sql: &mut impl SqlWriter, )

fn prepare_order_expr(&self, order_expr: &OrderExpr, sql: &mut impl SqlWriter)

Translate OrderExpr into SQL statement.

fn prepare_join_on(&self, join_on: &JoinOn, sql: &mut impl SqlWriter)

Translate JoinOn into SQL statement.

fn prepare_order(&self, order_expr: &OrderExpr, sql: &mut impl SqlWriter)

Translate Order into SQL statement.

fn prepare_field_order( &self, order_expr: &OrderExpr, values: &Values, sql: &mut impl SqlWriter, )

Translate Order::Field into SQL statement

fn prepare_constant(&self, value: &Value, sql: &mut impl SqlWriter)

Write Value inline.

fn prepare_values_list( &self, value_tuples: &[ValueTuple], sql: &mut impl SqlWriter, )

Translate a &[ValueTuple] into a VALUES list.

fn prepare_values_rows(&self, values: &[Values], sql: &mut impl SqlWriter)

fn prepare_tuple(&self, exprs: &[Expr], sql: &mut impl SqlWriter)

Translate Expr::Tuple into SQL statement.

fn prepare_keyword(&self, keyword: &Keyword, sql: &mut impl SqlWriter)

Translate Keyword into SQL statement.

fn value_to_string(&self, v: &Value) -> String

Convert a SQL value into syntax-specific string

fn value_to_string_common(&self, v: &Value) -> String

fn prepare_on_conflict_action_common( &self, on_conflict_action: &Option<OnConflictAction>, sql: &mut impl SqlWriter, )

fn write_string_quoted(&self, string: &str, buffer: &mut impl Write)

fn insert_default_keyword(&self) -> &str

The keywords for insert default row.

fn insert_default_values(&self, num_rows: u32, sql: &mut impl SqlWriter)

Write insert default rows expression.

fn prepare_constant_true(&self, sql: &mut impl SqlWriter)

Write TRUE constant

fn prepare_constant_false(&self, sql: &mut impl SqlWriter)

Write FALSE constant

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§