Method: Lore::Table_Update#block_update

Defined in:
lib/lore/strategies/table_update.rb

#block_update(&block) ⇒ Object



76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
# File 'lib/lore/strategies/table_update.rb', line 76

def block_update(&block)
# {{{
  query_string = "UPDATE #{@base_table} "

  if block_given? then
    yield_obj = Lore::Clause_Parser.new(@accessor)
    clause = yield *yield_obj
  end

  query_string += clause.set_part
  query_string += clause.where_part
  
  Lore::Context.enter(@accessor.get_context) if @accessor.get_context
  begin
    Lore::Connection.perform(query_string)
  ensure
    Lore::Context.leave if @accessor.get_context
  end

end