Long winded ADP ADO OLE DB ODBC question

Posted on 2004-04-29
Medium Priority
Last Modified: 2013-12-05
Im wondering if someone can give me some explanation regarding these layers of communication.  If find them quite confusing.  In particular, the hype regarding how great Access ADP files are because of their native connectivity with SQL Server.  In my limited experience with them, I have found them to be rather cumbersome and limiting.  I appreciate the speed advantages they have over linking SQL tables to an MDB file, but theres some downsides as well.  Not being able to use local tables is definitely one of them.  If you have full access to SQL server, then you can create your views, sp's, triggers, tables etc, then using ADO you can open or call any of these objects directly from an MDB file.  At the same time you can link to other data sources using ODBC.  Is using ADO to call an sp or open a recordset from MS SQL the same as connecting with an ADP file and binding views to your forms.

Sorry if this question is kind of all over the place but Id like to get these things straight, to help me make decisions in designing future apps.


Question by:BillPowell
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
  • 2
  • 2
LVL 21

Assisted Solution

Kevin3NF earned 600 total points
ID: 10963260

I find that the ADPs are really nice, but painfully hard to get right until you get over the very steep learning curve.  If you need local tables, then MDBs are great.  If you want to stick with MDB but get the speed, pass-thru queries wok really well too, especially when executing a stored procedure.  My understanding is that ADPs do use ADO.  It really boils down to personal choice.  A big benefit of ADP is the ability to design SQL Server object inside the Access application, especially if you are using MSDE instead of full SQL Server.

Does that help?

LVL 46

Accepted Solution

tbsgadi earned 1400 total points
ID: 10970907
I found this article very useful:

Access projects have advantages over the other methods of accessing client-server data I've covered:
They provide direct access to a SQL Server database.
You can easily create and modify SQL Server tables, views, database diagrams, and stored procedures, all from the Access development environment.
You can backup and restore the SQL Server database, maintain SQL Server security, and perform SQL Server replication tasks.
You can build forms, reports, data access pages, and modules that access SQL Server data, without involving Jet.
The client side requires fewer resources.
The server is responsible for all query processing.
You can use functionality not available when accessing ODBC via Jet.
You can execute asynchronous queries -- you don't have to wait for a query to complete execution before you begin another operation.
You can perform batch updates -- You can cache changes locally and then submit them to the server as a batch.
You can run queries that return multiple result sets.
You can easily limit the number of records returned in a result set.
You can easily monitor messages and errors generated by the remote data source.

Access Data Projects also have several disadvantages:
You can't create local tables. This means the row source of static combo boxes and list boxes, for example, must be SQL Server tables. This results in unnecessary network traffic being generated as these combo boxes and list boxes are populated.
You can't create local queries. What were tables in your Access database (.MDB) must be created as views or stored procedures in your Access data project (.ADP). Even the most experienced query experts may find it challenging and time-consuming to rebuild complex Access queries as views and stored procedures.
The process of building an application using an ADP file involves a learning curve.
LVL 11

Author Comment

ID: 10973697
Hey guys,

Thanks for the responses.  I guess if your using MSDE and dont have access to full MS SQL with enterprise manager, this can be a big advantage of ADP's.  I guess theres one thing still puzzling me about ADP's MDB communication to SQL server.  Lets say you write an app with an MDB file.  You dont link the sql tables, but instead access them through ADO code calling stored procedures and views etc.  You can still use some local tables if needed, thus maintaining some flexibility.  In this scenario, would the ADP still have any performance advantage over the mdb.  Also, would either of these two scenarios be more favourable if you decide to ditch access and upgrade to vb.net as a development tool?
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

LVL 46

Expert Comment

ID: 10974973
In the first case you described the ADP still has the advantage.
In the second case obviously if you'd wish to upgrade to vb.net you'd be able to use the ADO code & not the mdb
LVL 11

Author Comment

ID: 10983094
Thanks for the input guys.  Ive been gathering more info and reading some other links too, and I think Im getting a handle on it.


LVL 21

Expert Comment

ID: 10983436
also check out the Microsoft newsgroup: Microsoft.public.access.adp.sqlserver (or something like that)....

Featured Post

Free learning courses: Active Directory Deep Dive

Get a firm grasp on your IT environment when you learn Active Directory best practices with Veeam! Watch all, or choose any amount, of this three-part webinar series to improve your skills. From the basics to virtualization and backup, we got you covered.

Question has a verified solution.

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

In earlier versions of Windows (XP and before), you could drag a database to the taskbar, where it would appear as a taskbar icon to open that database.  This article shows how to recreate this functionality in Windows 7 through 10.
You need to know the location of the Office templates folder, so that when you create new templates, they are saved to that location, and thus are available for selection when creating new documents.  The steps to find the Templates folder path are …
In Microsoft Access, learn the trick to repeating sub-report headings at the top of each page. The problem with sub-reports and headings: Add a dummy group to the sub report using the expression =1: Set the “Repeat Section” property of the dummy…
Have you created a query with information for a calendar? ... and then, abra-cadabra, the calendar is done?! I am going to show you how to make that happen. Visualize your data!  ... really see it To use the code to create a calendar from a q…
Suggested Courses

762 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