Class: DatastaxRails::Cql::Insert
- Defined in:
- lib/datastax_rails/cql/insert.rb
Instance Method Summary collapse
- #columns(columns) ⇒ Object
-
#initialize(klass) ⇒ Insert
constructor
A new instance of Insert.
- #timestamp(timestamp) ⇒ Object
- #to_cql ⇒ Object
- #ttl(ttl) ⇒ Object
Methods inherited from Base
Constructor Details
#initialize(klass) ⇒ Insert
Returns a new instance of Insert.
4 5 6 7 8 9 10 |
# File 'lib/datastax_rails/cql/insert.rb', line 4 def initialize(klass) @klass = klass @ttl = nil @timestamp = nil @columns = {} super end |
Instance Method Details
#columns(columns) ⇒ Object
12 13 14 15 |
# File 'lib/datastax_rails/cql/insert.rb', line 12 def columns(columns) @columns.merge!(columns) self end |
#timestamp(timestamp) ⇒ Object
22 23 24 25 |
# File 'lib/datastax_rails/cql/insert.rb', line 22 def () @timestamp = self end |
#to_cql ⇒ Object
27 28 29 30 31 32 33 34 35 36 37 38 |
# File 'lib/datastax_rails/cql/insert.rb', line 27 def to_cql keys = [] @columns.each do |k, v| keys << k.to_s @values << v end stmt = "INSERT INTO #{@klass.column_family} (#{keys.join(',')}) " stmt << "VALUES (#{('?' * keys.size).split(//).join(',')}) " stmt << "AND TTL #{@ttl} " if @ttl stmt << "AND TIMESTAMP #{@timestamp}" if @timestamp stmt.force_encoding('UTF-8') end |
#ttl(ttl) ⇒ Object
17 18 19 20 |
# File 'lib/datastax_rails/cql/insert.rb', line 17 def ttl(ttl) @ttl = ttl self end |