Terje Martinsen said:
Using Access 2003 (forms, queries, reports, macros).
Data tables on SQL Server 2000, tables linked to Access "database".
A) Can anyone please explain the benefits of making passthrough queries
instead of "normal" queries.
B) Are there any noticeable drawbacks?
Local Access queries against ODBC links can have a wide range of processing
possibilities. Some will have the SQL passed to the server and all of the
processing will be done there with only the result passed back to your app.
Others will cause large blocks of data (perhaps entire tables) to be sent
to the client PC where the query is processed locally. Also possible is a
split of the processing anywhere between those two extremes.
While most standard queries against ODBC linked tables will be processed
primarily on the server, using Pass-Throughs and Stored Procedures is a way
to guarantee that 100% of the processing will be server-side. Given the
above you can see that changing many queries into PTs or SPs will have
minimal benefit. My advice is always to build the query first in the
manner that is fastest and easiest for you to get it right and then see how
it performs. If you feel that perhaps it could be a little faster you can
create a duplicate as a PT or SP and see if there is any benefit.
I would also point out that with the hardware level of most modern PCs
getting server-side processing is not nearly as important as it once was.
What _is_ still important is limiting the amount of data sent back and
forth over the network. The same practices that attempt to get more
processing on the server usually result in less data traffic as well.