ToSQL

Trait ToSQL 

Source
pub trait ToSQL<'a, V>
where V: SQLParam,
{ // Required method fn to_sql(&self) -> SQL<'a, V>; // Provided method fn alias(&self, alias: &'static str) -> SQL<'a, V> { ... } }
Expand description

Trait for types that can be converted to SQL fragments.

The 'a lifetime ties any borrowed parameter values to the resulting SQL fragment, allowing zero-copy SQL construction when inputs are already borrowed.

Required Methods§

Source

fn to_sql(&self) -> SQL<'a, V>

Provided Methods§

Source

fn alias(&self, alias: &'static str) -> SQL<'a, V>

Implementations on Foreign Types§

Source§

impl<'a, V> ToSQL<'a, V> for &'a str
where V: SQLParam + 'a + From<&'a str> + Into<Cow<'a, V>>,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V> ToSQL<'a, V> for Cow<'a, str>
where V: SQLParam + 'a + From<&'a str> + From<String> + Into<Cow<'a, V>>,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V> ToSQL<'a, V> for Cow<'a, [u8]>
where V: SQLParam + 'a + From<&'a [u8]> + From<Vec<u8>> + Into<Cow<'a, V>>,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V> ToSQL<'a, V> for bool
where V: SQLParam + 'a + From<bool> + Into<Cow<'a, V>>,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V> ToSQL<'a, V> for f32
where V: SQLParam + 'a + From<f32> + Into<Cow<'a, V>>,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V> ToSQL<'a, V> for f64
where V: SQLParam + 'a + From<f64> + Into<Cow<'a, V>>,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V> ToSQL<'a, V> for i8
where V: SQLParam + 'a + From<i8> + Into<Cow<'a, V>>,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V> ToSQL<'a, V> for i16
where V: SQLParam + 'a + From<i16> + Into<Cow<'a, V>>,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V> ToSQL<'a, V> for i32
where V: SQLParam + 'a + From<i32> + Into<Cow<'a, V>>,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V> ToSQL<'a, V> for i64
where V: SQLParam + 'a + From<i64> + Into<Cow<'a, V>>,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V> ToSQL<'a, V> for isize
where V: SQLParam + 'a + From<isize> + Into<Cow<'a, V>>,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V> ToSQL<'a, V> for u8
where V: SQLParam + 'a + From<u8> + Into<Cow<'a, V>>,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V> ToSQL<'a, V> for u16
where V: SQLParam + 'a + From<u16> + Into<Cow<'a, V>>,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V> ToSQL<'a, V> for u32
where V: SQLParam + 'a + From<u32> + Into<Cow<'a, V>>,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V> ToSQL<'a, V> for u64
where V: SQLParam + 'a + From<u64> + Into<Cow<'a, V>>,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V> ToSQL<'a, V> for ()
where V: SQLParam + 'a,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V> ToSQL<'a, V> for usize
where V: SQLParam + 'a + From<usize> + Into<Cow<'a, V>>,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V> ToSQL<'a, V> for Box<[&'static dyn SQLColumnInfo]>
where V: SQLParam + 'a,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V> ToSQL<'a, V> for Box<[&'static dyn SQLTableInfo]>
where V: SQLParam + 'a,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V> ToSQL<'a, V> for String
where V: SQLParam + 'a + From<String> + Into<Cow<'a, V>>,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V, T0> ToSQL<'a, V> for (T0,)
where V: SQLParam, T0: ToSQL<'a, V>,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V, T0, T1> ToSQL<'a, V> for (T0, T1)
where V: SQLParam, T0: ToSQL<'a, V>, T1: ToSQL<'a, V>,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V, T0, T1, T2> ToSQL<'a, V> for (T0, T1, T2)
where V: SQLParam, T0: ToSQL<'a, V>, T1: ToSQL<'a, V>, T2: ToSQL<'a, V>,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V, T0, T1, T2, T3> ToSQL<'a, V> for (T0, T1, T2, T3)
where V: SQLParam, T0: ToSQL<'a, V>, T1: ToSQL<'a, V>, T2: ToSQL<'a, V>, T3: ToSQL<'a, V>,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V, T0, T1, T2, T3, T4> ToSQL<'a, V> for (T0, T1, T2, T3, T4)
where V: SQLParam, T0: ToSQL<'a, V>, T1: ToSQL<'a, V>, T2: ToSQL<'a, V>, T3: ToSQL<'a, V>, T4: ToSQL<'a, V>,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V, T0, T1, T2, T3, T4, T5> ToSQL<'a, V> for (T0, T1, T2, T3, T4, T5)
where V: SQLParam, T0: ToSQL<'a, V>, T1: ToSQL<'a, V>, T2: ToSQL<'a, V>, T3: ToSQL<'a, V>, T4: ToSQL<'a, V>, T5: ToSQL<'a, V>,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V, T0, T1, T2, T3, T4, T5, T6> ToSQL<'a, V> for (T0, T1, T2, T3, T4, T5, T6)
where V: SQLParam, T0: ToSQL<'a, V>, T1: ToSQL<'a, V>, T2: ToSQL<'a, V>, T3: ToSQL<'a, V>, T4: ToSQL<'a, V>, T5: ToSQL<'a, V>, T6: ToSQL<'a, V>,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V, T0, T1, T2, T3, T4, T5, T6, T7> ToSQL<'a, V> for (T0, T1, T2, T3, T4, T5, T6, T7)
where V: SQLParam, T0: ToSQL<'a, V>, T1: ToSQL<'a, V>, T2: ToSQL<'a, V>, T3: ToSQL<'a, V>, T4: ToSQL<'a, V>, T5: ToSQL<'a, V>, T6: ToSQL<'a, V>, T7: ToSQL<'a, V>,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V, T0, T1, T2, T3, T4, T5, T6, T7, T8> ToSQL<'a, V> for (T0, T1, T2, T3, T4, T5, T6, T7, T8)
where V: SQLParam, T0: ToSQL<'a, V>, T1: ToSQL<'a, V>, T2: ToSQL<'a, V>, T3: ToSQL<'a, V>, T4: ToSQL<'a, V>, T5: ToSQL<'a, V>, T6: ToSQL<'a, V>, T7: ToSQL<'a, V>, T8: ToSQL<'a, V>,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9> ToSQL<'a, V> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9)
where V: SQLParam, T0: ToSQL<'a, V>, T1: ToSQL<'a, V>, T2: ToSQL<'a, V>, T3: ToSQL<'a, V>, T4: ToSQL<'a, V>, T5: ToSQL<'a, V>, T6: ToSQL<'a, V>, T7: ToSQL<'a, V>, T8: ToSQL<'a, V>, T9: ToSQL<'a, V>,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> ToSQL<'a, V> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)
where V: SQLParam, T0: ToSQL<'a, V>, T1: ToSQL<'a, V>, T2: ToSQL<'a, V>, T3: ToSQL<'a, V>, T4: ToSQL<'a, V>, T5: ToSQL<'a, V>, T6: ToSQL<'a, V>, T7: ToSQL<'a, V>, T8: ToSQL<'a, V>, T9: ToSQL<'a, V>, T10: ToSQL<'a, V>,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> ToSQL<'a, V> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)
where V: SQLParam, T0: ToSQL<'a, V>, T1: ToSQL<'a, V>, T2: ToSQL<'a, V>, T3: ToSQL<'a, V>, T4: ToSQL<'a, V>, T5: ToSQL<'a, V>, T6: ToSQL<'a, V>, T7: ToSQL<'a, V>, T8: ToSQL<'a, V>, T9: ToSQL<'a, V>, T10: ToSQL<'a, V>, T11: ToSQL<'a, V>,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> ToSQL<'a, V> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12)
where V: SQLParam, T0: ToSQL<'a, V>, T1: ToSQL<'a, V>, T2: ToSQL<'a, V>, T3: ToSQL<'a, V>, T4: ToSQL<'a, V>, T5: ToSQL<'a, V>, T6: ToSQL<'a, V>, T7: ToSQL<'a, V>, T8: ToSQL<'a, V>, T9: ToSQL<'a, V>, T10: ToSQL<'a, V>, T11: ToSQL<'a, V>, T12: ToSQL<'a, V>,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> ToSQL<'a, V> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13)
where V: SQLParam, T0: ToSQL<'a, V>, T1: ToSQL<'a, V>, T2: ToSQL<'a, V>, T3: ToSQL<'a, V>, T4: ToSQL<'a, V>, T5: ToSQL<'a, V>, T6: ToSQL<'a, V>, T7: ToSQL<'a, V>, T8: ToSQL<'a, V>, T9: ToSQL<'a, V>, T10: ToSQL<'a, V>, T11: ToSQL<'a, V>, T12: ToSQL<'a, V>, T13: ToSQL<'a, V>,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> ToSQL<'a, V> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14)
where V: SQLParam, T0: ToSQL<'a, V>, T1: ToSQL<'a, V>, T2: ToSQL<'a, V>, T3: ToSQL<'a, V>, T4: ToSQL<'a, V>, T5: ToSQL<'a, V>, T6: ToSQL<'a, V>, T7: ToSQL<'a, V>, T8: ToSQL<'a, V>, T9: ToSQL<'a, V>, T10: ToSQL<'a, V>, T11: ToSQL<'a, V>, T12: ToSQL<'a, V>, T13: ToSQL<'a, V>, T14: ToSQL<'a, V>,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> ToSQL<'a, V> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)
where V: SQLParam, T0: ToSQL<'a, V>, T1: ToSQL<'a, V>, T2: ToSQL<'a, V>, T3: ToSQL<'a, V>, T4: ToSQL<'a, V>, T5: ToSQL<'a, V>, T6: ToSQL<'a, V>, T7: ToSQL<'a, V>, T8: ToSQL<'a, V>, T9: ToSQL<'a, V>, T10: ToSQL<'a, V>, T11: ToSQL<'a, V>, T12: ToSQL<'a, V>, T13: ToSQL<'a, V>, T14: ToSQL<'a, V>, T15: ToSQL<'a, V>,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V, T> ToSQL<'a, V> for &'a [T]
where V: SQLParam + 'a, T: ToSQL<'a, V>,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V, T> ToSQL<'a, V> for Option<T>
where V: SQLParam + 'a, T: ToSQL<'a, V>,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V, T> ToSQL<'a, V> for &T
where V: SQLParam, T: ToSQL<'a, V>,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V, T> ToSQL<'a, V> for Vec<T>
where V: SQLParam + 'a, T: ToSQL<'a, V>,

Source§

fn to_sql(&self) -> SQL<'a, V>

Source§

impl<'a, V, T, const N: usize> ToSQL<'a, V> for [T; N]
where V: SQLParam + 'a, T: ToSQL<'a, V>,

Source§

fn to_sql(&self) -> SQL<'a, V>

Implementors§

Source§

impl<'a> ToSQL<'a, SQLiteValue<'a>> for AutoVacuum

Source§

impl<'a> ToSQL<'a, SQLiteValue<'a>> for Encoding

Source§

impl<'a> ToSQL<'a, SQLiteValue<'a>> for JournalMode

Source§

impl<'a> ToSQL<'a, SQLiteValue<'a>> for LockingMode

Source§

impl<'a> ToSQL<'a, SQLiteValue<'a>> for Pragma

Source§

impl<'a> ToSQL<'a, SQLiteValue<'a>> for SecureDelete

Source§

impl<'a> ToSQL<'a, SQLiteValue<'a>> for Synchronous

Source§

impl<'a> ToSQL<'a, SQLiteValue<'a>> for TempStore

Source§

impl<'a> ToSQL<'a, SQLiteValue<'a>> for SQLiteValue<'a>

Source§

impl<'a, Schema, State, Table> ToSQL<'a, SQLiteValue<'a>> for QueryBuilder<'a, Schema, State, Table>

Source§

impl<'a, Table, Query> ToSQL<'a, SQLiteValue<'a>> for CTEView<'a, Table, Query>
where Query: ToSQL<'a, SQLiteValue<'a>>,

ToSQL implementation renders just the CTE name for use in FROM clauses. Unlike aliased tables (which render as “original” AS “alias”), CTEs should just render as their name since they’re already defined in the WITH clause.

Source§

impl<'a, V> ToSQL<'a, V> for &'static dyn SQLColumnInfo
where V: SQLParam + 'a,

Source§

impl<'a, V> ToSQL<'a, V> for &'static dyn SQLTableInfo
where V: SQLParam + 'a,

Source§

impl<'a, V> ToSQL<'a, V> for OrderBy
where V: SQLParam + 'a,

Source§

impl<'a, V> ToSQL<'a, V> for Join
where V: SQLParam + 'a,

Source§

impl<'a, V> ToSQL<'a, V> for OwnedPreparedStatement<V>
where V: SQLParam,

Source§

impl<'a, V> ToSQL<'a, V> for PreparedStatement<'a, V>
where V: SQLParam,

Source§

impl<'a, V> ToSQL<'a, V> for SQLBytes<'a>
where V: SQLParam + 'a + From<&'a [u8]> + From<Vec<u8>> + Into<Cow<'a, V>>,

Source§

impl<'a, V> ToSQL<'a, V> for SQL<'a, V>
where V: SQLParam + 'a,

Source§

impl<'a, V, Lhs, Rhs, Op> ToSQL<'a, V> for ColumnBinOp<Lhs, Rhs, Op>
where V: SQLParam, Lhs: ToSQL<'a, V>, Rhs: ToSQL<'a, V>, Op: BinOpToken,

Source§

impl<'a, V, T> ToSQL<'a, V> for ColumnNeg<T>
where V: SQLParam, T: ToSQL<'a, V>,

Source§

impl<'a, V, T, N, A> ToSQL<'a, V> for SQLExpr<'a, V, T, N, A>

Source§

impl<V> ToSQL<'static, V> for OwnedSQL<V>
where V: SQLParam,