# File lib/arel/update_manager.rb, line 3 def initialize engine super @ast = Nodes::UpdateStatement.new @ctx = @ast end
# File lib/arel/update_manager.rb, line 18 def key @ast.key end
# File lib/arel/update_manager.rb, line 14 def key= key @ast.key = Nodes.build_quoted(key) end
# File lib/arel/update_manager.rb, line 22 def order *expr @ast.orders = expr self end
# File lib/arel/update_manager.rb, line 43 def set values if String === values @ast.values = [values] else @ast.values = values.map { |column,value| Nodes::Assignment.new( Nodes::UnqualifiedColumn.new(column), value ) } end self end
UPDATE table
# File lib/arel/update_manager.rb, line 29 def table table @ast.relation = table self end
# File lib/arel/update_manager.rb, line 9 def take limit @ast.limit = Nodes::Limit.new(Nodes.build_quoted(limit)) if limit self end
# File lib/arel/update_manager.rb, line 38 def where expr @ast.wheres << expr self end
# File lib/arel/update_manager.rb, line 34 def wheres= exprs @ast.wheres = exprs end