Read an important
update to this article at the bottom of the page (7/13/2000).
An interesting thing happened on
the way to ADO 2.0. If you try to upgrade (or is it
downgrade, really) your app from DAO 3.51 to ADO
2.0 with Jet 3.51 OLE DB provider,
your application may fail if you try to access ISAM tables (dBase, Paradox, Jet
2, Fox Pro), Spreadsheets (Excel, Lotus 1-2-3), HTML files or Delimited and
Fixed Text . In addition, Jet 3.51 OLE DB Provider doesn't support linked
tables. So what can you do? Upgrade to the latest ADO (2.5 at the
time of the writing). It ships with the Jet 4.0 provider, which supports
all those things. There is still one problem though. You can read
DBase and Paradox data, but you can't modify it unless you have Borland
Database Engine installed. Why? Because MS & Borland did some
type of deal involving 10% Microsoft investment in Borland, which removed those
features from Jet & related technologies. To read more on the changes
in Jet, click here
So what's a developer to do? We recommend the
following.
If your app accesses MDB data and/or various
installable ISAMs, stick with Dao 3.51. It screams past the latest ADO in
this situation. Seriously, I don't know how Microsoft can with a straight
face recommend that everyone move to ADO, when it is horiffically slow against
MDBs.
If you are accessing corporate data residing in
Oracle, SQL Server or Sybase, download ADO 2.5 - it is comparable to ODBC
speeds. If you are using Sybase, get their OLE DB provider. It is
ages faster than the ODBC driver. If you are using Sybase Lite, you may
have a problem here - their OLE DB provider requires Sybase Open Client product,
which doesn't come with this version of the database. If you have money to
spare, I'd recommend getting the Merant (formerly
Intersolv) OLE DB Provider for Sybase - it has no dependencies, but they charge
you for it.
Update (07-13-2000). Visual Studio Service Pack 4 has come out
and with it Microsoft brought back DBase and Paradox read/write support to DAO
3.6 and OLEDB 4.0 ISAM providers without having to buy any software from Borland.
Why did this happen? The speculation is that Borland never liked
that MS provided access to Borland data formats without having to buy associated
tools (in this case Borland Database Engine, DBase and Paradox) thus obsoleting
the tools. After the investment deal, MS removed that support as
a gesture to Borland. Well, now Borland is porting its RAD tools (Delphi,
Builder C++) to Linux. MS obviously doesn't like that because
having Delphi available for Linux means that hundreds of previously Windows-only
Delphi shareware developers could port their wares to Linux with a simple
recompile. Thus, a retaliation, by restoring dBase & Paradox
support. I should say, that I have absolutely nothing to back up this
story. It is based purely on discussions in various newsgroups (which
people in the know occasionally visit).