Hi 1DMF
1DMF,
I was in a similar situation to you several years ago.
The advantages of stored procedures:
1. It modularises your code - you can set up a set of scripts that returns data based on input parameters. Query execution plans get saved and re used where possible, and you don't have to do anything specific to get this performance advantage.
2. Even without explicit transaction code, a procedure either executes completely or not at all.
3. They are useful for security - you can have applications execute them without direct access to the underlying tables or other objects that they may use.
4. You can take full advantage of TSQL rather than have Access convert the retrieved data to its own format. As a bare minimum, create views to do the table joins, then link to the views rather than tables - it saves SQL server downloading all the table data to the client PC and handling the joins and filtering on the client PC. This saves network bandwidth and helps boost server performance.
If you run SQL Server profiler or activity monitor when accessing/manipulating data via linked tables, you will see that large numbers of table locks get opened and are maintained until the browsing stops - you can do things a lot faster via TSQL rather than via Access linked tables.
To save repeating standard advice, can I suggest you go to
and download:
- SQL Server Tacklebox
- SQL Server Crib Sheet compendium
- Mastering SQL Server Profiler
and have a look at some of the beginners videos at
(you may find some of these are too basic for you as you have database/SQL experience).
Happy reading.
John