diff --git a/lib/arel/visitors/to_sql.rb b/lib/arel/visitors/to_sql.rb index ee72d864..921eeb9b 100644 --- a/lib/arel/visitors/to_sql.rb +++ b/lib/arel/visitors/to_sql.rb @@ -114,16 +114,16 @@ def visit_Arel_Nodes_UpdateStatement o, collector collector end - def visit_Arel_Nodes_InsertStatement o - [ - "INSERT INTO #{visit o.relation}", - - ("(#{o.columns.map { |x| - quote_column_name x.name - }.join ', '})" unless o.columns.empty?), + def visit_Arel_Nodes_InsertStatement o, collector + collector << "INSERT INTO " + collector = visit o.relation, collector + if o.columns.any? + collector << "(#{o.columns.map { |x| + quote_column_name x.name + }.join ', '})" + end - (visit o.values if o.values), - ].compact.join ' ' + maybe_visit o.values, collector end def visit_Arel_Nodes_Exists o, collector