class Sequel::SQLite::Dataset

Dataset class for SQLite datasets that use the ruby-sqlite3 driver.

Constants

BindArgumentMethods
DatasetClass
PREPARED_ARG_PLACEHOLDER
PreparedStatementMethods

Public Instance Methods

fetch_rows(sql) { |row| ... } click to toggle source

Yield a hash for each row in the dataset.

# File lib/sequel/adapters/sqlite.rb, line 334
def fetch_rows(sql)
  execute(sql) do |result|
    i = -1
    cps = db.conversion_procs
    type_procs = result.types.map{|t| cps[base_type_name(t)]}
    cols = result.columns.map{|c| i+=1; [output_identifier(c), i, type_procs[i]]}
    self.columns = cols.map(&:first)
    result.each do |values|
      row = {}
      cols.each do |name,id,type_proc|
        v = values[id]
        if type_proc && v
          v = type_proc.call(v)
        end
        row[name] = v
      end
      yield row
    end
  end
end