descriptionmirror of mdbtools.git from github
homepage URLhttp://mdbtools.sourceforge.net/
repository URLhttps://github.com/brianb/mdbtools.git
ownerkirr@navytux.spb.ru
last changeSun, 24 Oct 2021 13:17:04 +0000 (24 09:17 -0400)
last refreshTue, 21 May 2024 03:23:33 +0000 (21 05:23 +0200)
content tags
add:
README.md

Build Status Build status Fuzzing Status

Welcome to the exciting world of MDB Tools! MDB Tools is a set of programs to help you extract data from Microsoft Access files in various settings. See the NEWS file for information about the latest release.

Components

The major pieces of MDB Tools are:

libmdb

The core library that allows access to MDB files programatically. See mdbtools.h for the complete API.

libmdbsql

Builds on libmdb to provide a SQL engine (aka Jet). See mdbsql.h for the complete API.

utils

Provides command line utilities, including:

CommandDescription
mdb-verPrints the version (JET 3 or 4) of an mdb file.
mdb-schemaPrints DDL for the specified table.
mdb-exportExport table to CSV or SQL formats.
mdb-jsonExport table to JSON format.
mdb-tablesA simple dump of table names to be used with shell scripts.
mdb-countA simple count of number of rows in a table, to be used in shell scripts and ETL pipelines.
mdb-sqlA simple SQL engine (also used by ODBC and gmdb).
mdb-queriesList and print queries stored in the database.
mdb-hexdump*(in src/extras) Simple hex dump utility to look at mdb files.
mdb-array*Export data in an MDB database table to a C array.
mdb-header*Generates a C header to be used in exporting mdb data to a C prog.
mdb-parsecsv*Generates a C program given a CSV file made with mdb-export.

* Deprecated

See the man page of each program for usage instructions.

The src/util directory also contains a number of debugging tools, intended for developers. They are:

CommandDescription
prcatPrints the catalog table from an mdb file.
prkkdDump of information about design view data given the offset to it.
prtableDump of a table definition.
prdataDump of the data given a table name.
proleDump of ole columns given a table name and sargs.

These tools are not installed on the host system.

odbc

An ODBC driver for use with unixODBC or iODBC driver manager. Allows one to use MDB files with PHP for example.

gmdb2

The Gnome MDB File Viewer and debugger. Recently ported to GTK+3 and moved to mdbtools/gmdb2.

License

Files in libmdb, libmdbsql, and libmdbodbc are licensed under LGPL and the utilities and gui program are under the GPL, see COPYING.LIB and COPYING files respectively.

Requirements

First, you must have reasonably current installations of:

If you want to build the SQL engine, you'll need bison (version >= 3.0) or byacc, and flex.

If you want to build the ODBC driver, you'll need unixodbc-dev (version 2.2.10 or above) or iodbc.

If you want to build man pages, you'll need GNU awk.

Installation

Latest version is available at https://github.com/mdbtools/mdbtools

Debian

apt install mdbtools

Homebrew

brew install mdbtools

MacPorts

port install mdbtools

From source

If you have cloned the Git repository, you will first need to generate the configure file (skip this step if you have downloaded a formal release):

$ autoreconf -i -f

Then:

$ ./configure

OR for a complete install (requires bison, flex, and unixODBC):

$ ./configure --with-unixodbc=/usr/local

By default, MDB Tools is linked against the copy of GLib returned by pkg-config. You can point to a different GLib installation using the GLIB_CFLAGS and GLIB_LIBS enivornment variables. Or, you can disable GLib entirely with the --disable-glib flag, in which case MDB Tools will use an internal implementation of GLib's functions.

configure can be passed any of the following flags to turn on other capabilities. Note that the options --with-unixodbc and --with-iodbc are mutually exclusive.

--with-unixodbc  specifies the location of the unixODBC driver manager and
                 causes the unixODBC driver to be built.
--with-iodbc     specifies the location of the iODBC driver manager and
                 causes the iODBC driver to be built.

By default, the ODBC driver will be installed as /usr/local/lib/odbc/libmdbodbc.so, with a Unicode-capable driver at /usr/local/lib/odbc/libmdbodbcW.so.

A list of general options is available in the INSTALL file, and configure --help will give you the list of mdbtools specific options.

$ make

Once MDB Tools has been compiled, libmdb.[so|a] will be in the src/libmdb directory and the utility programs will be in the src/util directory.

You can then install (to /usr/local by default) by running the following as root:

$ make install

Some systems will also need the ld cache to be updated after installation; You can do that running:

$ ldconfig

Hacking

If you are interested in helping, read the HACKING file for a description of where the code stands and what has been gleened of the file format.

Contact

Please send bug reports to the new github repository. https://github.com/mdbtools/mdbtools/issues

shortlog
2021-10-24 Evan MillerMerge branch 'dev'master
2021-10-24 Evan MillerVersion 1.0.0v1.0.0
2021-09-30 Evan MillerFix appveyor build
2021-09-30 Christian EhrhardtFix gcc-11 error "directive argument is null"
2021-09-29 Evan MillerVersion 1.0.0, Beta 7v1.0.0-beta7
2021-09-29 Evan MillerClarify some bit-shifting casts
2021-09-29 Evan MillerFix export of byte field values >127
2021-09-12 Evan MillerVersion 1.0.0, Beta 6v1.0.0-beta6
2021-09-08 Evan MillerRearrange some ODBC code
2021-09-08 Evan MillerMerge branch 'dev' of github.com:mdbtools/mdbtools...
2021-09-08 Evan MillerPrint deprecation warnings before usage info
2021-09-08 Evan MillerUse TLS macro for cross-platform thread-local storage
2021-09-08 Evan MillerImproved bounds checking
2021-09-08 Evan MillerODBC: Support SQL_C_WCHAR target type. Fixes #347
2021-09-06 Evan MillerVersion 1.0.0, Beta 5v1.0.0-beta5
2021-09-06 Evan MillerImplement SQLFetchW
...
tags
2 years ago v1.0.0
2 years ago v1.0.0-beta7
2 years ago v1.0.0-beta6
2 years ago v1.0.0-beta5
2 years ago v1.0.0-beta4
2 years ago v1.0.0-beta3
2 years ago v1.0.0-beta2
2 years ago v1.0.0-beta1
2 years ago v0.9.4
2 years ago v0.9.4-beta1
3 years ago v0.9.3
3 years ago v0.9.3-beta4
3 years ago v0.9.3-beta3
3 years ago v0.9.3-beta2
3 years ago v0.9.3-beta1
3 years ago v0.9.2
...
heads
6 days ago dev
2 years ago master
2 years ago v0.9.x
3 years ago yes-sql
forks
Cached version (4221s old)
mdbtools/kirr.git kirr's mdbtools tree kirr@landau.phys... 13 years ago