diff --git a/src/backend/query_builder.rs b/src/backend/query_builder.rs index b284eda6..827ce5ca 100644 --- a/src/backend/query_builder.rs +++ b/src/backend/query_builder.rs @@ -25,14 +25,13 @@ pub trait QueryBuilder: self.prepare_table_ref(table, sql); } - self.prepare_output(&insert.returning, sql); - - write!(sql, " ").unwrap(); - if insert.default_values.is_some() && insert.columns.is_empty() && insert.source.is_none() { + self.prepare_output(&insert.returning, sql); + write!(sql, " ").unwrap(); let num_rows = insert.default_values.unwrap(); self.insert_default_values(num_rows, sql); } else { + write!(sql, " ").unwrap(); write!(sql, "(").unwrap(); insert.columns.iter().fold(true, |first, col| { if !first { @@ -43,6 +42,8 @@ pub trait QueryBuilder: }); write!(sql, ")").unwrap(); + self.prepare_output(&insert.returning, sql); + if let Some(source) = &insert.source { write!(sql, " ").unwrap(); match source {