I've been playing with the Ruby/ODBC interface and I have a basic
question. This may be more of a general ODBC question but I'm hoping
people in this forum know what the best option is.
I'll be retrieving a largish dataset (40000 rows) from an Oracle DB
via ODBC. My question is, basically, whether all the rows will be
retrieved at once when I execute the query or whether I'll get the
data in chunks as I scroll through the rows in the $q.each block?
Should I be using ADO through WIN32OLE instead? ADO is what I use from
my C++ programs to do similar stuff.
Thanks,
Andrew
The test program (which only selects a small subset) currently looks
something like this:
require 'odbc'
$c = ODBC.connect(database, username, password)
$q = $c.prepare("select pn_id,fx_id,pn_thatch_dm from table where
pn_id>'0002001001376200' and pn_id<'0002001001376210'")
$q.execute
$i=0
$q.columns { |col|
print ( col.name, " --- ")
if col.name == "FX_ID" then
$fxIdCol = $i
end
$i = $i+1
}
print "\n"
print ("fxid col is ", $fxIdCol, "\n")
$q.each { |row|
row.each { |col|
print (col, " ")
}
print "\n"
}
print "\n"
$q.close
$c.disconnect