General
Some rules of thumb that work for us:
Don't use TADOTable, try and use queries, either with TADODataset or its descendant TADOQuery
Try and use CursorLocation := clUseServer whenever you can. It reallydoes perform better. You lose a little functionality in regard to Access,but that can be worked around.
If you have to use CursorLocation := clUseClient, set MaxRecords to a small value, say 20.
If you have written a complex query that returns values from many tables in your database, always use clUseServer.
Restrict your queries to return as few records as possible.
If you have many datasets being opened when your application starts, try and rationalise them. Optimise your code to open only as those that are needed to start the application. Open the others as required.. This approach at least gives the impression that the application loads quickly.
Make your fields persistent.
In regard to the above, we had a large application that originally took
nearly 90 second to load. It's now down to 8 seconds on the same PC!
Bookmarks