I'm with Sylvain here. There is little point in using an Access front end
if you are not going to use bound forms. There is just such an advantage to
it that any potential minor speed improvement by using disconnected
recordsets is simply not worth the coding effort. If you really like to
code that much, go with VB.net or C.
I have been using Access as a front end for major RDBMS' since version 2.0
in the early 90's. Access works fine against linked ODBC tables, especially
if you design your application with that purpose in mind from the beginning.
There were only a couple of times during that period where I needed to
resort to pass-through queries or use views/stored procedures. In the case
of the pass-through, I was replacing an entire table with a refreshed
version (don't ask
) and the delete from Access took way too long due to
the fact that Access gives you the option to cancel the delete so which
causes it to have to cache the to-be-deleted records. The other cases were
complex reports that were working with tables containing millions of rows.
I created server views to get the data in some cases and in others, I
created SQL on the fly and ran it as a pass-through query. Access can
actually handle millions of rows. The problem was that too much of the
processing had to be done locally due to the calculations and functions that
needed to be used and the issue was network bandwidth. It takes a lot of
time to move 9 million rows around a network.