queryAll();will load all data in memory , if you have a large dataSet to iterate , you 'd better use dataReader . it 's true that dataReader is forward-only .
The query that is actually performed is done on a lot of data, but the query only returns max 4 rows and 25 columns into the dataset. Can that be considered a large dataset? How can I release/clear the memory once used?