SQT
A C++ ORM framework for SQLite
Loading...
Searching...
No Matches
sqt::ColumnInserter< CONFLICT_ACTION, ASSIGNMENTS > Class Template Reference

#include <sqt/orm/querier/inserter/column_inserter.h>

Description

template<ConflictAction CONFLICT_ACTION, AssignmentType... ASSIGNMENTS>
class sqt::ColumnInserter< CONFLICT_ACTION, ASSIGNMENTS >

A primary inserter that inserts values to specific columns in the table.

Template Parameters
CONFLICT_ACTIONThe conflict action to be used when a unique constraint violation occurs.
ASSIGNMENTSThe assignment types that the inserter uses for insertion. Each assignment type must satisfy the sqt::AssignmentType concept.

This primary inserter inserts values to specific columns in the table. The columns to be inserted are specified by the ASSIGNMENTS types.

To create instances of this inserter, use the sqt::DataContext::MakeInserter(ASSIGNMENTS&&... assignments) method.

This class template satisfies the sqt::QuerierType concept.

See also
sqt::AssignmentType
sqt::ConflictAction
sqt::DataContext<>::MakeInserter(ASSIGNMENTS&&... assignments)
sqt::QuerierType

Static Public Member Functions

static std::string_view BuildSQL ()
static constexpr auto BuildPlaceholderBinders () noexcept

Public Member Functions

constexpr ColumnInserter (ASSIGNMENTS... assignments) noexcept
void BindInlineParameters (Statement &statement) const

Static Public Attributes

static constexpr std::size_t ParameterIndex = 1
static constexpr std::size_t ParameterCount = (ASSIGNMENTS::ParameterCount + ... + 0)