| Class | Sequel::TinyTDS::Dataset |
| In: |
lib/sequel/adapters/tinytds.rb
|
| Parent: | Sequel::Dataset |
Yield hashes with symbol keys, attempting to optimize for various cases.
# File lib/sequel/adapters/tinytds.rb, line 89
89: def fetch_rows(sql)
90: execute(sql) do |result|
91: each_opts = {:cache_rows=>false}
92: each_opts[:timezone] = :utc if Sequel.database_timezone == :utc
93: offset = @opts[:offset]
94: @columns = cols = result.fields.map{|c| output_identifier(c)}
95: if identifier_output_method
96: each_opts[:as] = :array
97: result.each(each_opts) do |r|
98: h = {}
99: cols.zip(r).each{|k, v| h[k] = v}
100: h.delete(row_number_column) if offset
101: yield h
102: end
103: else
104: each_opts[:symbolize_keys] = true
105: if offset
106: result.each(each_opts) do |r|
107: r.delete(row_number_column) if offset
108: yield r
109: end
110: else
111: result.each(each_opts, &Proc.new)
112: end
113: end
114: end
115: self
116: end