pub struct BareInsertInto { /* private fields */ }
Expand description

Bare INSERT INTO statement without a valid VALUES clause specified

You will want to make use of three methods to convert this into a usable statement:

  • default_values to add a DEFAULT VALUES clause
  • values to add VALUES (...) clause with unspecified columns
  • columns to start building a (...) VALUES (...) clause with specific columns

Implementations§

source§

impl BareInsertInto

source

pub fn default_values(self) -> InsertInto<DefaultValues>

Add a DEFAULT VALUES clause to this statement

use scooby::postgres::insert_into;

let sql = insert_into("Dummy").default_values().to_string();

assert_eq!(sql, "INSERT INTO Dummy DEFAULT VALUES");
source

pub fn values<T: IntoNonZeroArray<Expression, N>, const N: usize>( self, values: impl IntoIterator<Item = T> ) -> InsertInto<WithoutColumns<N>>

Add a VALUES (...) clause with unspecified columns to this statement

use scooby::postgres::insert_into;

let sql = insert_into("Dummy").values([("$1", "$2"), ("$3", "$4")]).to_string();

assert_eq!(sql, "INSERT INTO Dummy VALUES ($1, $2), ($3, $4)");
source

pub fn columns<const N: usize>( self, columns: impl IntoNonZeroArray<Column, N> ) -> InsertIntoColumnsBuilder<N>

Begin building a (...) VALUES (...) clause for this statement.

Expects a non-zero list of columns: an array, a tuple, or a single value.

Returns an InsertIntoColumnsBuilder structure which requires you to specify at least one set of values.

use scooby::postgres::insert_into;

let sql = insert_into("Dummy")
    .columns(("col1", "col2"))
    .values([("$1", "$2"), ("$3", "$4")])
    .to_string();

assert_eq!(sql, "INSERT INTO Dummy (col1, col2) VALUES ($1, $2), ($3, $4)");

Trait Implementations§

source§

impl Debug for BareInsertInto

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.