Installation guide

mxODBC - Python ODBC Database Interface
When interfacing to MySQL using the MySQL ODBC driver, we have
observed problems with using Unicode statements passed to
cursor.execute() when using iODBC 3.52.5. These problems appear
to be related to iODBC. As work-around, you can use unixODBC, which
works fine with Unicode statements.
You may experience problems when trying to connect to MySQL via
MyODBC hooked to iODBC in case you are using the binary RPMs
available. For some reason, the MyODBC driver does not reference the
MySQL shared libraries it needs to connect to the MySQL server and
there's no way to tell iODBC to load two shared libraries. Here's a trick
which will allow you to create an import lib which solves the problem on
Linux:
rm -f /usr/local/lib/libmyodbc.so
ld -shared --whole-archive \
/usr/local/lib/libmyodbc-2.50.34.so \
/usr/lib/libmysqlclient.so.10 \
-o /usr/local/lib/libmyodbc.so
ldconfig
64-bit Platforms
You may run into problems with iODBC since it uses 64-bit SQL Unicode
types. Most ODBC drivers follow the Windows standard of using 32-bit
Unicode types. Support for Unicode with iODBC is therefore limited.
You may also run into problems with ODBC drivers compiled against
unixODBC. While iODBC follows the ODBC standard of using 64-bit SQL
length types, unixODBC has only recently (starting with version 2.2.13)
switched to these longer types. As a result ODBC drivers compiled
against older versions of unixODBC will not work reliably with iODBC.
Commercial ODBC drivers for Unix are often compiled using 64-bit SQL
length types and 32-bit Unicode types. iODBC uses 64-bit types for both.
14.5 mx.ODBC.unixODBC -- unixODBC Driver
Manager
Tested with unixODBC 2.3.2.
unixODBC is an alternative Open Source ODBC manager for originally designed
for Linux and later extended to other Unixes maintained by EasySoft
. It compiles
against mxODBC without problems.
Many open-source ODBC drivers are compiled against this driver manager per
default, so it may provide better support for those drivers than iODBC.
176