Class: DataMapper::Queries::UpdateStatement
- Inherits:
-
Object
- Object
- DataMapper::Queries::UpdateStatement
- Defined in:
- lib/data_mapper/queries/update_statement.rb
Direct Known Subclasses
Instance Method Summary collapse
-
#initialize(database, instance) ⇒ UpdateStatement
constructor
A new instance of UpdateStatement.
- #to_sql ⇒ Object
Constructor Details
#initialize(database, instance) ⇒ UpdateStatement
Returns a new instance of UpdateStatement.
6 7 8 |
# File 'lib/data_mapper/queries/update_statement.rb', line 6 def initialize(database, instance) @database, @instance = database, instance end |
Instance Method Details
#to_sql ⇒ Object
10 11 12 13 14 15 16 17 18 19 20 |
# File 'lib/data_mapper/queries/update_statement.rb', line 10 def to_sql table = @database[@instance.class] sql = "UPDATE " << table.to_sql << " SET " @instance.dirty_attributes.map do |k, v| sql << table[k].to_sql << " = " << @database.quote_value(v) << ", " end sql[0, sql.size - 2] << " WHERE #{table.key.to_sql} = " << @database.quote_value(@instance.key) end |