class Sequel::ADO::Dataset

Public Instance Methods

fetch_rows(sql) { |h| ... } click to toggle source
# File lib/sequel/adapters/ado.rb, line 245
def fetch_rows(sql)
  execute(sql) do |recordset|
    cols = []
    conversion_procs = db.conversion_procs

    recordset.Fields.each do |field|
      cols << [output_identifier(field.Name), conversion_procs[field.Type]]
    end

    self.columns = cols.map(&:first)
    return if recordset.EOF
    max = cols.length

    recordset.GetRows.transpose.each do |field_values|
      h = {}

      i = -1
      while (i += 1) < max
        name, cp = cols[i]
        h[name] = if (v = field_values[i]) && cp
          cp.call(v)
        else
          v
        end
      end
      
      yield h
    end
  end
end
provides_accurate_rows_matched?() click to toggle source

ADO can return for for delete and update statements, depending on the provider.

# File lib/sequel/adapters/ado.rb, line 277
def provides_accurate_rows_matched?
  false
end