pub struct Insert {Show 20 fields
pub insert_token: AttachedToken,
pub or: Option<SqliteOnConflict>,
pub ignore: bool,
pub into: bool,
pub table: TableObject,
pub table_alias: Option<Ident>,
pub columns: Vec<Ident>,
pub overwrite: bool,
pub source: Option<Box<Query>>,
pub assignments: Vec<Assignment>,
pub partitioned: Option<Vec<Expr>>,
pub after_columns: Vec<Ident>,
pub has_table_keyword: bool,
pub on: Option<OnInsert>,
pub returning: Option<Vec<SelectItem>>,
pub replace_into: bool,
pub priority: Option<MysqlInsertPriority>,
pub insert_alias: Option<InsertAliases>,
pub settings: Option<Vec<Setting>>,
pub format_clause: Option<InputFormatClause>,
}Expand description
INSERT statement.
Fields§
§insert_token: AttachedTokenToken for the INSERT keyword (or its substitutes)
or: Option<SqliteOnConflict>Only for Sqlite
ignore: boolOnly for mysql
into: boolINTO - optional keyword
table: TableObjectTABLE
table_alias: Option<Ident>table_name as foo (for PostgreSQL)
columns: Vec<Ident>COLUMNS
overwrite: boolOverwrite (Hive)
source: Option<Box<Query>>A SQL query that specifies what to insert
assignments: Vec<Assignment>MySQL INSERT INTO ... SET
See: https://dev.mysql.com/doc/refman/8.4/en/insert.html
partitioned: Option<Vec<Expr>>partitioned insert (Hive)
after_columns: Vec<Ident>Columns defined after PARTITION
has_table_keyword: boolwhether the insert has the table keyword (Hive)
on: Option<OnInsert>§returning: Option<Vec<SelectItem>>RETURNING
replace_into: boolOnly for mysql
priority: Option<MysqlInsertPriority>Only for mysql
insert_alias: Option<InsertAliases>Only for mysql
settings: Option<Vec<Setting>>Settings used for ClickHouse.
ClickHouse syntax: INSERT INTO tbl SETTINGS format_template_resultset = '/some/path/resultset.format'
format_clause: Option<InputFormatClause>Format for INSERT statement when not using standard SQL format. Can be e.g. CSV,
JSON, JSONAsString, LineAsString and more.
ClickHouse syntax: INSERT INTO tbl FORMAT JSONEachRow {"foo": 1, "bar": 2}, {"foo": 3}