hello,
from an earlier posting from 'Veli', i understand that activating a table is equivalent to 'SELECT * FROM table', i.e. all records are loaded into memory and can lead to an 'out of memory crash'. it was proposed to use TMyQuery instead of TMyTable.
for some purposes the proposal may be useful but i would like to move from record to record with Next() and in a second round with Previous() in order to process every single reocrd one by one.
this means that i do not need to simultaneously keep all records in memory but i need to at least access each record. how can TMyQery help me here ?
thanks
uwe
activating MyTable with large table
You should use UniDirectional mode (TMyQuery.UniDirectional = True). In this mode the only current record is cached on the client. The restriction of this mode is that you can browse the record set forward only (commands like Prior, First are not allowed). Not all DB-aware controls can work in this mode (e.g. TDBGrid).
You can also restrict your record set size by specifying only required field names instead of * in your SELECT, and by adding a condition to WHERE to restrict records count.
You can also restrict your record set size by specifying only required field names instead of * in your SELECT, and by adding a condition to WHERE to restrict records count.