To use Data Bound controls or not ?

Posted on 1998-08-03
Last Modified: 2010-05-03
From books, DBList, DBCombo and also the List, Combo separately could utilize DAO recordsets.  Which provides more accuracy even though more code is required ? Which provides greater data access speed ?  Which do you prefer ?
Question by:optical
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

Expert Comment

ID: 1467694
In my experience, data controls are evil. <g>  They have the tendency to "snap-back" to the first record in the recordset once you update a record (from what I remember), and what you change in the control directly updates the data (again, from what I remember. There are probably ways of dealing with these behaviors, but I never pursued them--data-bound controls scared me!

One advantage of data-bound controls, though,  is that they require less code.

I've used DAO and RDO and they seem to require the same amount of coding.

But I would recommend RDO for several reasons, the not the least being that RDO seems to be the successor to DAO, it's also faster than both data-bound (which are a dog) and DAO; it allows batch processing as well as asynchronous transactions, and it is event-driven.

Look into it for yourself, run some comparable tests, there's enough information in Books Online to help you decide.


Expert Comment

ID: 1467695
Here are some rambling thoughts. It has been a Monday and I am writing this with a beer in my hand. Pardon any incoherency.

IMHO, in DAO it is a toss-up. If your form is based on one table, you can get some decent performance improvement going unbound (because you can use a table-type recorset), but I typically have only trivial forms which are based on one table. Searching through multiple table-type recordsets is almost always less efficient than using a dynaset on a query with a join. If you have large numbers of users, unbound will help increase the maximum number of effective users. Of course, if you have a large number of users, why are you using DAO?

As for ADO & RDO I definitely prefer working unbound. You can manage your connections much better manually than with data controls.

Expert Comment

ID: 1467696
tomook.... I hear the beer.  It is a Monday indeed.

I agree with the management of your connections.  You always know precisely what's what.
Salesforce Made Easy to Use

On-screen guidance at the moment of need enables you & your employees to focus on the core, you can now boost your adoption rates swiftly and simply with one easy tool.


Expert Comment

ID: 1467697
My opinion is, that it depends on your comfort level and the task you are undertaking.

Although I am using DAO in most case now, I had used data control and bounded control for my first couple of years, and I had not experienced significant trouble.  

However, DAO (and RDO) gives you more capbility and flexibility, although it required significant more code.

If you feel more confortable with coding, and have a good idea as how to doing it, by all means use DAO.  If you are relatively new in VB database programming, I would suggest you start with data control, but do pay attention to some of the behaviors of data control.


Expert Comment

ID: 1467698
tomook.... I hear the beer.  It is a Monday indeed.

I agree with the management of your connections.  You always know precisely what's what.

Expert Comment

ID: 1467699
  The data control is an anathema to me. Very difficult to understand its behaviour. I find it
always convenient to use the unbound controls. The flexibilty available easily offsets the
difficulty in coding. Moreover complex insert update and select queries is easier to handle
in the unbound mode.

Expert Comment

ID: 1467700
Id depends on the type of application u are developing.For a 3tier client server application data bound controls are a strict no-no as they take a lot of time to make connection and fetchn data.RDO is better.For stand alone apps.Data bound controls are better.

Expert Comment

ID: 1467701
Data-bound controls completely violate three-tier architecture.

Expert Comment

ID: 1467702

Accepted Solution

DQ earned 50 total points
ID: 1467703
IF your application is relatively simple, use data control give you a quick start, with reasonably satisfactory results. It will help you learn. If you are dealing with a remote date source, with non native database, doing a lot of SQL query, datacontrol is not suitable.

Based on your question, I think you can start with data control. When you get more skilled with coding, migrate to DAO.

Featured Post

Industry Leaders: 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!

Question has a verified solution.

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

Suggested Solutions

When designing a form there are several BorderStyles to choose from, all of which can be classified as either 'Fixed' or 'Sizable' and I'd guess that 'Fixed Single' or one of the other fixed types is the most popular choice. I assume it's the most p…
Article by: Martin
Here are a few simple, working, games that you can use as-is or as the basis for your own games. Tic-Tac-Toe This is one of the simplest of all games.   The game allows for a choice of who goes first and keeps track of the number of wins for…
As developers, we are not limited to the functions provided by the VBA language. In addition, we can call the functions that are part of the Windows operating system. These functions are part of the Windows API (Application Programming Interface). U…
Get people started with the utilization of class modules. Class modules can be a powerful tool in Microsoft Access. They allow you to create self-contained objects that encapsulate functionality. They can easily hide the complexity of a process from…

742 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