214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
|
# File 'lib/sequel/adapters/tinytds.rb', line 214
def fetch_rows(sql)
execute(sql) do |result|
columns = result.fields.map!{|c| output_identifier(c)}
if columns.empty?
args = []
args << {:timezone=>:utc} if db.timezone == :utc
cols = nil
result.each(*args) do |r|
unless cols
cols = result.fields.map{|c| [c, output_identifier(c)]}
self.columns = columns = cols.map(&:last)
end
h = {}
cols.each do |s, sym|
h[sym] = r[s]
end
yield h
end
else
self.columns = columns
if db.timezone == :utc
result.each(:timezone=>:utc){|r| yield r}
else
result.each{|r| yield r}
end
end
end
self
end
|