Module: ActiveRecord::ConnectionAdapters::AmazonTimestream::DatabaseStatements

Included in:
ActiveRecord::ConnectionAdapters::AmazonTimestreamAdapter
Defined in:
lib/active_record/connection_adapters/amazon_timestream/database_statements.rb

Instance Method Summary collapse

Instance Method Details

#exec_query(sql, name = 'SQL', binds = [], prepare: false) ⇒ Object



19
20
21
22
23
24
25
26
27
# File 'lib/active_record/connection_adapters/amazon_timestream/database_statements.rb', line 19

def exec_query(sql, name = 'SQL', binds = [], prepare: false)
  log(sql, name, binds) do
    response = @connection.query query_string: sql

    ActiveRecord::Result.new response.column_info.map(&:name),
                             response.rows.map { |r| r.data.map(&:scalar_value) },
                             column_types_from(response.column_info)
  end
end

#execute(sql, name = nil) ⇒ Object



9
10
11
12
13
# File 'lib/active_record/connection_adapters/amazon_timestream/database_statements.rb', line 9

def execute(sql, name = nil)
  log(sql, name) do
    @connection.query({ query_string: sql })
  end
end

#select_rows(sql, name = nil, binds = []) ⇒ Object



15
16
17
# File 'lib/active_record/connection_adapters/amazon_timestream/database_statements.rb', line 15

def select_rows(sql, name = nil, binds = [])
  exec_query(sql, name, binds).to_a.map(&:values)
end