MDB Tools 1.0 includes a number of new features compared to the 0.9 series. The most significant change is that mdbtools.h
is now generated at build time, and its internal HAVE_
macros have been removed. This means that it is now safe for clients to compile against mdbtools.h
without needing to provide the same HAVE_ICONV
and HAVE_GLIB
flags that were present when the library was first compiled.
In most cases, ABI and API compatibility is preserved with the 0.9 series, but see the "Install" section below.
The SQL engine has two new operators: ILIKE
(case-insensitive pattern matching) and <>
(not equals).
To install MDB Tools 1.0:
./configure
make
make install
Changes since 0.9.4:
Build:
- Generate platform-specific
mdbtools.h
at configure-time #316 - Ensure compiler supports thread-local storage
- Fix
AC_PROG_LEX
warning with autoconf 2.70 - Rely on autoconf to define appropriate values of
_XOPEN_SOURCE
and friends - New
--disable-iconv
configure option (falls back towcstombs
where possible) - Fix a build error when
./configure
detected iconv, but thought it was not working - Generating the configure script now requires autoconf 2.64 or later
Install:
- Install
libmdbodbc.so
andlibmdbodbcW.so
into ${libdir}/odbc #315 - Do not install
mdb-sql
if SQL support was not built #276 - Do not install
libmdbsql.pc
if SQL support was not built
pkg-config
:
- Simplify
--cflags
for libmdb - Provide correct
--cflags
for libmdbsql
libmdb:
- Copy date formats when cloning handles #326
- Fix incorrect reading of double values #339 #342
- Fix accidental reads of non-index data #335 #343
- New
mdb_set_repid_fmt()
for setting the format of Rep IDs (UUIDs) #344
SQL:
- New case-insensitive, Unicode-aware
ILIKE
operator #244 - New
<>
(not equal) operator #329 - Improved support for comparing floating-point values to integers
- Improved support for floating point literals with no fractional digits (e.g. "3.")
- Add support for querying Rep IDs
ODBC:
- Format boolean values correctly as
SQL_C_CHAR
#327 - Add support for the
SQL_C_WCHAR
(UTF-16) return type #347 #348 - The Unicode driver (
libmdbodbcW.so
) no longer uses iconv #332 #333 - Add support for older iODBC installations lacking
odbcinst.h
mdb-export
:
- Convert table names to lower case when exporting to PostgreSQL #322
- Use
CREATE IF NOT EXISTS
when exporting to PostgreSQL #321 - Fix issue where byte columns with values > 127 were exported as negative numbers (regression introduced in v0.9.3-beta1) #350
mdb-hexdump
:
- Deprecate tool