MDB Tools 0.6pre1 review

by on

The MDB Tools project is a effort to document the MDB file format used in Microsoft's Access database package, and to provide a set o

License: LGPL (GNU Lesser General Public License)
File size: 0K
Developer: Brian Bruns
0 stars award from

The MDB Tools project is a effort to document the MDB file format used in Microsoft's Access database package, and to provide a set of tools and applications to make that data available on other platforms.

Specifically, MDB Tools includes programs to export schema and data to other databases such as MySQL, Oracle, Sybase, PostgreSQL, and others.

Also, included is a SQL engine for performing simple SQL queries. The 0.5 release includes an updated GUI interface (screenshot is available here). A sparse but functional ODBC driver is included as well.

MDB Tools currently has read-only support for Access 97 (Jet 3) and Access 2000/2002 (Jet 4) formats. Access 2000 support is a recent addition and may not be as complete as Jet 3 support.

Write support is currently being worked on and the first cut is expected to be included in the 0.6 release.

glib 2.0
Gnome 2.0

MDB Tools is composed of three libraries, a set of command line utilities and a graphical interface.


libmdb is the lowest level library. It handles the details of reading from and writing to the MDB file format. Atop this library sits all the other functionality of MDB Tools.

A complete description of libmdb will be available in the forthcoming MDB Tools Programmer's Guide. For now you can look at the utility programs for a general idea of how to use the API, it's fairly straightforward.

Command Line Utilities

MDB Tools comes with a set of command line utilties that allow mdb files to be used in shell scripting, extraction to another database, and similar functions. Each program is documented in its man page. A brief synopsis follows.

mdb-tables list tables in the specified file
mdb-schema generate schema DDL for the specified file
mdb-export generate CSV style output for a table
mdb-ver display the version of the specified file
mdb-header support for using MDB data in C
mdb-parsecsv support for using MDB data in C
mdb-sql command line SQL query tool

LibMDBSQL (the SQL Engine)

LibMDBSQL is an SQL engine which provides a subset of the SQL query language to access MDB databases. It is used with the ODBC driver, by the mdb-sql utility, and by the query window in gmdb2.


LibMDBODBC is an ODBC driver that works with the unixODBC driver manager to allow MDB Tools to work with such programs as PHP and Perl (via DBD::ODBC). At the time of this writing, the breadth of coverage for the driver is rather limited. If you have specific problems with it, please contact the list and they can most likely be resolved.

The ODBC driver relies on LibMDB and LibMDBSQL.


Gmdb2 is a graphical interface to the functionality of MDB Tools. Its interface resembles that of access with a tabbed interface to each of the object types in the database (tables, queries, forms, etc...). Additonally, it sports an SQL Query window, and a file debugger useful for developers or anybody interested in examining the dark secrets of the MDB file format.

MDB Tools 0.6pre1 search tags