This is an alpha release for the Connector/ODBC 5.3.x series. The available downloads include both a Unicode driver and an ANSI driver within the same package (the two drivers are no longer shipped separately). Server-side prepared statements are enabled by default. It is suitable for use with any MySQL version since 4.1 (it will not work with 4.0 or earlier releases).
This is the first MySQL ODBC driver series conforming to the ODBC 3.8 specification. It contains the minimally required implementation of the standard with key 3.8 features, which includes driver self-identification and the streaming of output parameters (supported for binary types only) in this alpha release.
Connector/ODBC 5.3 also introduces a GTK+-based setup library, providing GUI DSN setup dialog on some Unix-based systems. The library is currently included in the Oracle Linux 6 and Debian 6 binary packages. Other new features in the 5.3 series include File DSN and bookmark support.
The release is built against the MySQL server 5.6.14 client library.
Keep in mind that this is an alpha release and, as with any other pre-production releases, cautions should be taken when installing on production level systems or systems with critical data. Not all of the features planned for the final Connector/ODBC 5.3 release are implemented.
Added a lock in the
ENV
structure against simultaneous accesses to an environment handle's connection list, in order to avoid memory access issues that might occur when multiple threads share the same environment handle. (Bug #17240611, Bug #69864)Support for File Data Source Names. (Bug #11746219, Bug #24581, WL #6583)
Support of ODBC 3.8 standard: driver self-identification and input/output stream parameters (WL #6584)
Added GUI DSN setup dialog for some Unix-based systems by implementing a GTK+-based setup library. (WL #5848)
Added a new test module for crash bugs (
my_crash.c
).Added new variable in CMake configuration files
ODBCCP32_LIB
forodbccpp32.lib
path, and addedMYSQLCLIENT_LIB_NAME
for linking MySQL client library statically or dynamically by specifying the MySQL client library (libmysql.*
,mysqlclient.*
,libmysqlclient_r.*
,libmysqlclient.*
) to be used. Linkage to MySQL 5.6.4 and later is now by C++, becauselibmysqlclient_r
has become a C++ library since.Bookmark support added in Connector/ODBC. (WL #7039)
A memory leak occurred in
fetch_varlength_columns()
while callingSQLExecDirect()
, because freeingresult_bind
buffers requiresfield_count
, which was set to “0” whenmysql_stmt_free_result()
was called. This fix freesresult_bind
buffers before callingmysql_stmt_free_result()
. (Bug #17441296)A program using parameter markers might crash with a segmentation fault. To avoid the problem, this fix changes the argument
length
in the functionconvert_c_type2str()
to be a pointer to a long integer. (Bug #17421620, Bug #69733)Memory leaks occurred in
SQLPrepare()
andSQLExecDirect()
whenSQLBindParamater
was used on the SQL statements. This fix frees previous results ofmysql_stmt_result_metadata()
in order to prevent the memory leaks. (Bug #17400483, Bug #70113)The exit condition for a
for
loop instringutil.c
is changed to avoid a possible out-of-bounds error and the associated reports by Valgrind. (Bug #17397596, Bug #64105)Microsoft Visual Studio 2010 crashed when reading rows from any table in Server Explorer with connections to DSNs made by Connector/ODBC. (Bug #17304031, Bug #69950)
When SQL
TIME
data was converted to the C data type ofTIMESTAMP
, if the value of thehour
field is greater than 24, the date fields did not get set to the current date and thefraction
field for seconds did not get set to zero as required by the ODBC specifications. (Bug #17016839, Bug #69545)When trying to create a linked server in Micrsoft SQL Server 2008 to a MySQL server set up with Connector/ODBC as a DSN, the Microsoft SQL Server (if it is a 64-bit version) crashed or the linked server suffered a catastrophic failure (if a 32-bit version of the Microsoft SQL Server is used). (Bug #16604346, Bug #63386)
When reading
TIME
column data using theSQLGetData
method into theSQL_C_TYPE_TIME
datatype, errors occurred when the time string contained more than 6-digits (e.g., 120:53:44). (Bug #16176981, Bug #67793)When called after
SQLPrepare
, the funcitonSQLMoreResults
returnedSQL_ERROR
, instead ofSQL_NO_DATA
as required by the ODBC specification. (Bug #16101282, Bug #67920)Connector/ODBC used the “;” character instead of a null byte (“\0”) to terminate keyword-value pairs in attribute strings. (Bug #15940689, Bug #66548)
When using the Unicode-enabled version of the Connector/ODBC driver to connect to any MySQL server of version 5.5.2 or older, all statements failed with the error message “Server does not support 4-byte encoded UTF8 characters.” (Bug #14838690, Bug #67428)
The configured values of a DSN's parameters overrode the values provided through the connection string, instead of the other way round. (Bug #11760574, Bug #52996)