http://www.perlmonks.org?node_id=406671


in reply to Re: fetch row or fetchall
in thread fetch row or fetchall

Note that the DBI RowCacheSize database handle attribute can often help you balance your memory/speed tradeoff for large queries. But it depends on the underlying database -- not all can make use of it. In practice, I have found some significant differences in query time/memory when changing this for queries that return large numbers of rows.

For significant database applications I find it nearly impossible to write SQL that works across all. I always end up having to make use of database-specific functions or other constructs. If your application is only going to run on one database it's probably fine to make use of LIMIT, TOP, or Oracle's ROWNUM. It depends on whether your priority is speed and function or portability across databases.