On Monday, October 29, 2001, at 10:08 AM, Wilson, Doug wrote:
> >> From: Shaozab, Sumera [mailto:[EMAIL PROTECTED]] > >> tried, I got "Out of memory!" error. The number of records I >> am retrieving >> is about 3 million records. Is this too much for fetchall_arrayref()? >> Should I upgrade DBI and DBD::Oracle? Any recommendation in >> speeding up my >> program? > > speed up? Why are you worried about speeding up your program; you > should first worry about making it work. Upgrading a module isn't > going to give you more memory. Only getting more memory is going > to get you more memory. Or using less memory would be even > better. DON'T fetch every thing into memory. Use one of the 'fetchrow_*' > methods instead of a 'fetchall_*' method and process one row at > a time. > Sumera, you seem to think that running fetchall_arrayref will make your program run faster than fetchrow_arrayref... but neither is going to make the retrieval of data from the database any faster. In fact, if you take a look at the DBI source code, you will see that fetchall_arrayref is implemented with fetchrow_arrayref. It really just makes things more convenient, not faster.
