[DB-SIG] cursor.fetchiter()?
Anthony Baxter
anthony at interlink.com.au
Wed Jun 22 15:08:00 CEST 2005
Would it make sense for DB-SIG compliant modules to support a
cursor.fetchiter() type method, to use the iterator protocol
(instead of fetchall()'s current load-everything-into-memory
first approach). Clever extensions could be written to grab
N at a time, where N is less than 10,000,000, but more than 1 -
this then means you get faster performance than fetchone(),
and a less sucky API.
res = cursor.fetchone()
while res:
dostuffwith(res)
res = cursor.fetchone()
vs
for res in cursor.fetchiter():
dostuffwith(res)
And yes, you can get something that's most of the way there
now with something like the code in the cookbook entry
http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/137270 -
just wondering if it's something worth adding to the API.
Anthony
--
Anthony Baxter <anthony at interlink.com.au>
It's never too late to have a happy childhood.
More information about the DB-SIG
mailing list