David Anderson said:
However, I did have some concerns about response time in this scenario and
I asked questions about this in the sqlserver forum.
I have had a response there that throws doubt on the wisdom of this
approach. Has your own experience with accessing a SQL Server back end
over the Internet been more positive?
I have personally talked to some people that created workable performance
over a dialup modem with MS access to SQL server.
You certainly have to pay attention to the amount of data you transfer into
a form. However any good access developer will do that even when not using
SQL server.
For example if you have a table with 5000 records in it, you must never ever
open up a form bound to that table of that many records *without* using the
where clause to restrict the number of records loaded.
In the case of a web based application, what's the difference between
displaying a web page that gets transferred to your computer with some
fields of information to be displayed, as opposed to telling SQL server to
send one record down the wire, and you display locally? (The answers is very
little if any difference here and performance). The problem is you'll never
see that website display 5000 records in a webpage will you?
Time and time again I see MS access applications that simply have a form
bound to a large table, you open the form, and then you let the user have at
it with this large table with thousands of records. This type of design
approach is bad in MS access, or in ***any*** development environment. One
of the reasons why some many developers state that MS access doesn't perform
well is not because MS access is any slower than vb or whatever when pulling
data from SQL server, it's just that we tend to have poor designs that
transfer a bunch of records into a form, and then say the person OK search
the form.
SQL server doesn't know if you're using the vb.net, MS access, c++ etc, or
even if a web site that's pulling data from SQL server. The server don't all
of a sudden say "hey", this is MS access let's transfer data slower!. Things
just simply don't work this way at all.
I recall some time ago I asked an 88 year old grandmother if it makes sense
to download all the names into instant teller machine, and then have the
person enter their account number? Or, is it better to simply ask for the
account the data have the number first, and then download one account
number? This old lady was able to perfectly and crystal clear answer this
question correctly. If a old lady can answer this question, then why do I
see so many ms-access applcations that go against the advice of a old lady
who don't even work in IT?
So will the application perform well? the answers it depends, and if you
have a design that limits the number of records transferred into a form,
then just have no problem at all.
I think the more difficult problem to solve here is where you plan to put
the pitchers, since you can't put them inside of MS access, and they'll
likely be files placed on your web server. What this means is you have a
difficult challenge to have those pictures related or displaed inside of an
MS access form on the client side of this application.