Skip to main content

Insert

Trait Insert 

Source
pub trait Insert<'a, Table, D: Driver> {
    // Required methods
    fn insert_columns() -> Vec<String>;
    fn insert_values(
        self,
        args_list: DriverArguments<'a, D>,
    ) -> Result<(DriverArguments<'a, D>, usize)>;
}
Expand description

Insert payload mapping for a table.

Prefer implementing this trait via the Insert derive macro; manual implementations may need updates across releases.

Required Methods§

Source

fn insert_columns() -> Vec<String>

Source

fn insert_values( self, args_list: DriverArguments<'a, D>, ) -> Result<(DriverArguments<'a, D>, usize)>

Returns (new arguments list, number of inserted rows)

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.

Implementations on Foreign Types§

Source§

impl<'a, Table, T: Insert<'a, Table, D>, D: Driver> Insert<'a, Table, D> for &'a [T]
where &'a T: Insert<'a, Table, D>,

Source§

impl<'a, Table, T: Insert<'a, Table, D>, D: Driver> Insert<'a, Table, D> for &'a Vec<T>
where &'a T: Insert<'a, Table, D>,

Source§

impl<'a, Table, T: Insert<'a, Table, D>, D: Driver> Insert<'a, Table, D> for Vec<T>

Implementors§

Source§

impl<'a, D: Driver> Insert<'a, EasySqlTables, D> for &'a EasySqlTables
where for<'__easy_sql_x> String: Encode<'__easy_sql_x, InternalDriver<D>> + Type<InternalDriver<D>>, for<'__easy_sql_x> i64: Encode<'__easy_sql_x, InternalDriver<D>> + Type<InternalDriver<D>>,

Source§

impl<'a, D: Driver> Insert<'a, EasySqlTables, D> for EasySqlTables
where for<'__easy_sql_x> String: Encode<'__easy_sql_x, InternalDriver<D>> + Type<InternalDriver<D>>, for<'__easy_sql_x> i64: Encode<'__easy_sql_x, InternalDriver<D>> + Type<InternalDriver<D>>,