A common question asked in numerous forums and discussion groups is:
- Which is better: ADO or DAO?
- Should I be using ADO or DAO in my code?
Thruthfully, there is no answer that applies for everyone. It all depends on what you are doing!
Some people argue back and forth that ADO or DAO is easier to code, or more powerful… I’m not even going to tackle this subject as a lot of it is subjective and dependent on what you are doing. They each offer pros and cons to the developper. That said;
If you are developing an MS Access database (back-end) then DAO is probably your best bet as it is optimized for Jet/ACE. It should also be noted, from what I have read, that Microsoft recommends DAO for Jet data and as such is typically faster than ADO in this scenario.
On the other hand, if you are developing an Access Data Project (.adp) in conjunction with an SQL Server database (back-end), it is normally recommended that you use ADO.
So based on this it become apparent that, it’s not a matter of whether it’s an ADP or an MDB/ACCDB, but rather where your data is stored and whether or not you will be using the Jet/ACE database engine or not. If you are utilizing the default Jet/ACE database engine then DAO is typically the best route to go. If not, then ADO is best.