Purchase |  Products |  Downloads |  Forums |  Blog |  Free Trial     

VistaDB vs. the Microsoft Jet / MDAC / Access engines

The most widely used desktop database in the world is Microsoft Access, which is an end-user application that allows programmers and non-programmers alike to create full featured database applications easily. Microsoft Access uses .MDB data files, which in addition to storing regular data, can contain forms, reports and other objects specific to Access.

Microsoft Access is not a data engine by itself, it is actually an application that uses the relies on the Microsoft Jet engine to perform the actual data storage and retrieval on the .MDB data files. The Jet engine was originally designed as a single-user desktop database engine, which as most developers know, does not work well in multi-user and web server applications.

Deprecated MDAC Components

Jet: Starting with version 2.6, MDAC no longer contains Jet components. In other words, MDAC 2.6, 2.7, 2.8, and all future MDAC releases do not contain Microsoft Jet, Microsoft Jet OLE DB Provider, or the ODBC Desktop Database Drivers. No new feature enhancements will be made to Jet.

Source: Microsoft

A very important point to understand, and one that most developers do not realize, is that Microsoft has deprecated the Jet database engine, which means developers will not see substantial improvements to Jet in the future. From the Microsoft MDAC Roadmap page under "Deprecated MDAC Components":

Jet History

Developed in the early 90's, the Jet engine is over 15 years old. It was never designed to manage today's data storage demands. As many developers have experienced, Jet is generally not a good solution for creating robust database applications because it is notorious for crashing and corrupting data in multi-user environments.

Microsoft Access was designed to be an end-user application and the .MDB Access database files is an inefficient storage format since it is designed to support non-essential data such as end-user forms, reports and modules. In summary, the Jet engine and the .MDB file format is simply not robust enough for today's complex network configurations and demanding data requirements.

The following link provides history on the Jet engine:
http://www.avdf.com/nov96/acc_jet.html

Future of Jet

With the nail in the coffin for the Jet engine, it is clear that developers must look to use an alternative database solution, such as VistaDB. Microsoft's solution for replacing Jet is to have developers migrate their Access .MDB databases to the SQL Server, MSDE or SQL Express. This sounds great, however, this is generally overkill for most desktop and small network applications. SQL Server, MSDE and SQL Express are each powerful databases (they are all versions of SQL Server) but they are simply too big and too complex for for most Access/Jet applications. The added overhead is staggering and in fact, is not feasible for most applications that need to be distributed over the Internet. With VistaDB's 500KB footprint, developers can actually reduce the original size of their Jet/.MDB-based applications by 20MB and use basic XCopy and FTP to deploy their applications. Hassle-free Copy 'n Go!™ deployment and zero configuration makes VistaDB the ideal replacement for Jet.

Microsoft Jet is not intended to be used with high-stress, high-concurrency, 24x7 server applications, such as Web, commerce, transactional, and messaging servers. For these type of applications, the best solution is to switch to a true client/server-based database system such as Microsoft Data Engine (MSDE) or Microsoft SQL Server. When you use Microsoft Jet in high-stress applications such as Microsoft Internet Information Server (IIS), customers have reported database corruption, stability issues such as IIS crashing or locking up, and also a sudden and persistent failure of the driver to connect to a valid database that requires re-starting the IIS service.

Microsoft

VistaDB is a replacement for Jet / MDAC API calls

VistaDB is not a replacement for MS-Access as an end-user desktop database application and it is not designed for end-users or VBA developers using MS-Access to build applications. VistaDB was designed from the ground up as an alternative database engine for developers using the Jet / MDAC components to manage Access .MDB database files.

Microsoft Jet Database Engine and DAO Licensing

The following explains Microsoft's licensing for distributing solutions that use Microsoft Jet and DAO: (Source)

  1. If the developer builds a solution in an application that includes Jet but does not have a runtime version, for example Microsoft Excel or Microsoft Office, they must purchase and install a copy of the application on each user's desktop for their solution to run correctly.
  2. If the developer builds a solution in an application that includes Jet and provides a runtime license or compilation, for example Microsoft Access (with the Microsoft Access Developers Toolkit), Microsoft Visual Basic, or Microsoft Visual C++, subject to the end user license agreements accompanying each of these products, they can build and distribute their solution to users with a runtime version or as a compiled application (.EXE). 3.
  3. If the developer builds a solution in an application which does NOT include Jet, but relies on Jet, (for example, Microsoft Project or Microsoft Visual FoxPro™) they face two requirements. First, they must adhere to the license agreement for the application they used to develop the solution. Second, they must purchase and install a copy of a Microsoft application or tool which DOES include Jet on the user's desktop.

VistaDB as an alternative to Microsoft Jet

VistaDB makes an excellent alternative to the Microsoft Jet database engine. VistaDB is actually smaller and easier to deploy than Jet, but allows the same level of functionality in the managed application space. If you are developing VB.net or C# applications and need a lightweight database engine to replace Jet look no further than VistaDB. VistaDB provides support for single and multi user environments, and cross platform support with Mono.

Unmanaged alternative to Microsoft Jet

VistaDB 2.x also provides an excellent alternative to Microsoft Jet for unmanaged environments. VistaDB 2 may be used in Borland Delphi, VCL, COM, and VB6 environments to provide a very easy to deploy alternative database engine to Jet for single and multi user environments.


Home |  Support |  FAQ |  Testimonials |  Site Map |  Contact Us |  News Archives |  Terms  
 © 1999-2008 VistaDB Software, Inc. All rights reserved.