tags:

views:

1342

answers:

4

I need a data store for single-user, read-only access. I need multiple tables, but not related. I also need to do two-column indexing. Seems like Jet is a good choice. Front end will be either VB or C#. The data is not user-entered data, but meta data about users and external files. What are the deployment issues for Jet -is it built into all Windows OS versions from xp onward? I plan on including the Access Database in the resource file.

A: 

The Microsoft Access .mdb driver is included with XP and up. It's part of MDAC.

There are a few other options for this, by the way. Look into SQL Compact, VistaDB, and SQLite.

Dave Swersky
I am aware of those options, but dont they all have deployment issues? whereas from the first answer it appears there are no deployment issues with Jet, thereby making it by far the logical choice given the functionality I need.
bill seacham
There are no significant deployment issues I'm aware of- all you have to do is include the drivers (.NET assemblies) for those databases with your software.
Dave Swersky
Jet has not been a part of MDAC for over 5 years. Given that Jet ships with the OS, there's no reason it should be included. The MDAC *does* include different interfaces that can be used to access Jet data -- it just doesn't include the Jet database engine itself.
David-W-Fenton
"MDAC does include different interfaces that can be used to access Jet data" -- which interfaces? When they removed the Jet engine from MDAC they also removed the Jet OLE DB Providers.
onedaywhen
They did? I missed that one. DAO is in the OS, nonetheless.
David-W-Fenton
+1  A: 

See why-should-i-use-sqlite-over-a-jet-database, and try both.

gimel
+2  A: 

MS Jet 4.0/DAO 3.6 are part of the operating system and are in Windows 2000, XP, Vista and Windows 7. They are updated by Windows Update and the security patches are applied as appropriate.

Alternatively to including the MDB file in the resource file you could build it if it isn't present. See the TempTables.MDB page at my website which illustrates how to use a temporary MDB in your app.

You can also use the Compare'Em utility to keep the database files tables, fields, indexes and relationships updated as you upgrade your app.

Tony Toews
A: 

Be aware that currently there are no 64 bit versions of the JET engine included with the operating systems!

The engines for 64 bit will be available with next Office. Beta can be downloaded from Microsoft Downloads

Sebastian Seifert
A2010 will introduce the 64-bit version of Jet/ACE. It's available separately as a download that's in beta, so this is a problem that will shortly be irrelevant.
David-W-Fenton
Sebastian Seifert
@Sebastian Seifert: why don't you edit your answer to add that link?
David-W-Fenton
@david-w-fenton: Thanks for the suggestion - I'll do that (I'm new to stackoverflow.com. Just didn't know about this possibility.)
Sebastian Seifert