MDBs will always use JET, but connecting JET to a SQL-Server back-end is the
difference. If you use JET queries, they will always be slower. But if you
use Pass-thrus so that the Server is returning a reduced recordset, the
difference is slight. The advantage of using the JET overlay to SQL-Server
is that you can run a local JET query on top of a SQL-Server pass-thru. Why
would you want to do that? Well, JET has some real advantages in that it can
resolve VBA functions. So, say you have a couple of hundred thousand rows of
data. Use a Pass-thru to SQL-Server to return the 10 rows you need, then run
a JET query on top of that (locally) to return your final result. Best of
both worlds.
It's not that JET is slow, it's that a WAN is slow and JET must return at
least the indexes of the entire table(s) to work. I personally find that
ADPs are often the easiest way to get and write SQL-Server data from a
front-end. Because of the amount of local processing that is done with VBA,
however, I invariably use MDBs for a lot of my reporting.
Still, the most users I've ever had on a WAN is 15, and I find that a
Terminal Server with Jet is still easier for the smaller databases (under a
couple of hundred MBs, that I build). For MSDE/SQL-Express where the engine
is free, the ROI is still often with an MDB because of the faster (generally
30 to 50%) development times. But with the full cost of a SQL-Server
license, the ROI is almost always with the MDB/JET solution.
--
Arvin Meyer, MCP, MVPhttp://
www.datastrat.comhttp://www.mvps.org/accesshttp://www.accessmvp.com
That wasn't my question. I was talking ADP->MSDE/SQL Server vs.
MDB->MSDE/SQL Server. Everyone already understands that Jet can't be
as efficient as a server back end.
But I'm only addressing the front end question, since you brought up
ADP.