Class: Axiom::SQL::Generator::Relation::Insertion

Inherits:
Set show all
Extended by:
Aliasable
Defined in:
lib/axiom/sql/generator/relation/insertion.rb

Overview

Generates an SQL statement for an insertion

Constant Summary

Constants inherited from Set

Set::DIFFERENCE, Set::INTERSECTION, Set::UNION

Constants inherited from Binary

Binary::JOIN, Binary::LEFT_NAME, Binary::PRODUCT, Binary::RIGHT_NAME

Constants inherited from Axiom::SQL::Generator::Relation

EMPTY_HASH, EMPTY_STRING, SEPARATOR, STAR

Constants included from Identifier

Identifier::ESCAPED_QUOTE, Identifier::QUOTE

Constants inherited from Visitor

Visitor::DOUBLE_COLON, Visitor::NAME_REP, Visitor::NAME_SEP_REGEXP, Visitor::UNDERSCORE

Instance Attribute Summary

Attributes inherited from Axiom::SQL::Generator::Relation

#name

Instance Method Summary collapse

Methods inherited from Set

normalize_operand_headers, #visit_axiom_algebra_difference, #visit_axiom_algebra_intersection, #visit_axiom_algebra_union

Methods inherited from Binary

#visit_axiom_algebra_join, #visit_axiom_algebra_product

Methods inherited from Axiom::SQL::Generator::Relation

#initialize, #to_s, #to_sql, #to_subquery, visit, #visit, #visited?

Methods included from Identifier

#visit_identifier

Methods included from Attribute

#visit_axiom_attribute

Methods inherited from Visitor

handler_for, #visit, #visited?

Constructor Details

This class inherits a constructor from Axiom::SQL::Generator::Relation

Instance Method Details

#visit_axiom_relation_operation_insertion(insertion) ⇒ self

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Visit an Insertion

Parameters:

  • insertion (Relation::Operation::Insertion)

Returns:

  • (self)


21
22
23
24
25
26
27
# File 'lib/axiom/sql/generator/relation/insertion.rb', line 21

def visit_axiom_relation_operation_insertion(insertion)
  @header = insertion.header
  set_columns(insertion)
  set_operands(insertion)
  set_name
  self
end