[Last Call] Learn how to a build a cloud-first strategyRegister Now

x
?
Solved

ms access and sql server

Posted on 2016-07-15
5
Medium Priority
?
49 Views
Last Modified: 2016-07-16
Hi Folks,
I just need a very brief general response to the following.
When using linked (ODBC) SQL Server tables on an Access 2010 FE:
Does running an Access query usually bring all the data to the FE and then subset?
(as opposed to a stored procedure with parameters which sub-sets records on the server?)
i.e will stored-procedures on big datasets always outperform Access queries?
and is there a way of using Access on SQL Server to get better performance without stored-procedures? (pass-through queries?)

thanks in advance
0
Comment
Question by:COACHMAN99
5 Comments
 
LVL 16

Assisted Solution

by:Brian Pringle
Brian Pringle earned 1000 total points
ID: 41713229
If you want better performance in Access, I would create views on the SQL server and then query against the view instead of the tables directly.
0
 
LVL 7

Author Comment

by:COACHMAN99
ID: 41713242
Does the view work better because it subsets/joins the data prior to querying it?
i.e. would the view help if there was only one table?
and
Does running an Access query usually bring all the data to the FE and then subset?
 (as opposed to a stored procedure with parameters which sub-sets records on the server?)
thanks
0
 
LVL 26

Accepted Solution

by:
Nick67 earned 1000 total points
ID: 41713264
very brief general response
How brief <grin>
Does running an Access query usually bring all the data to the FE and then subset?
Depends on what evil you have done in the query (functions, memo fields, Access specific stuff)
i.e will stored-procedures on big datasets always outperform Access queries?
A stored procedure will never perform worse than an Access query unless you build a bad stored procedure.
and is there a way of using Access on SQL Server to get better performance without stored-procedures?
All sorts of ways: Views, Indexed Views.  A stored procedure isn't the only thing SQL Server has to offer.  A query that you would normally store in Access can be done as a View in SQL Server.  If you index that View, it is persisted and can improve ALL queries involving some or all of its data for ALL clients requesting the data.  A sproc isn't the only game in town.
1
 
LVL 7

Author Closing Comment

by:COACHMAN99
ID: 41713521
Thanks guys.
0
 
LVL 58
ID: 41714541
<<Does running an Access query usually bring all the data to the FE and then subset?>>

 The answer is "it depends".   Just to add a comment or two:

1. An explicit pass-through will always run server side.

2. JET/ACE will always try to send a SQL statement to the BE RDBMS if possible.   But as Nick pointed out, doing "Access" type things, such as using VBA expressions, JET Specific SQL, or performing joins on local tables will force execution "client" side (where MSACCESS.EXE is running).

3. Even with that, JET will try and optimize as much as possible using indexes and sorts.  Working with the data is done where MSACCESS.EXE is running, but it may not pull all the data from the BE in order to get the job done.

Jim.
0

Featured Post

Prepare for your VMware VCP6-DCV exam.

Josh Coen and Jason Langer have prepared the latest edition of VCP study guide. Both authors have been working in the IT field for more than a decade, and both hold VMware certifications. This 163-page guide covers all 10 of the exam blueprint sections.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

One of the most important things in an application is the query performance. This article intends to give you good tips to improve the performance of your queries.
Windows Explorer lets you open cabinet (cab) files like any other folder. In VBA you can easily handle normal files and folders, but opening and indeed creating cabinet files takes a lot more - and that's you'll find here.
With Microsoft Access, learn how to start a database in different ways and produce different start-up actions allowing you to use a single database to perform multiple tasks. Specify a start-up form through options: Specify an Autoexec macro: Us…
Access reports are powerful and flexible. Learn how to create a query and then a grouped report using the wizard. Modify the report design after the wizard is done to make it look better. There will be another video to explain how to put the final p…
Suggested Courses

829 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question