Bug #19740 MyODBC3.DLL 3.51.12 10/15/2005 identifies itself as libmyodbc3.so
Submitted: 11 May 2006 20:24 Modified: 12 Jun 2007 10:26
Reporter: Jon Luers Email Updates:
Status: Closed Impact on me:
None 
Category:Connector / ODBC Severity:S2 (Serious)
Version:3.51.12 OS:Windows (Windows)
Assigned to: Bogdan Degtyariov CPU Architecture:Any

[11 May 2006 20:24] Jon Luers
Description:
There are actually two problems here: one is that the currently-available version of the Windows ODBC driver (nominally 3.51.12) identifies itself internally like a Linux version, as "libmyodbc3.so".  The other (larger?) problem is that there was a prior version of myodbc3.dll, dated 6/1/2005, which is also externally identified as version 3.51.12, but which internally identifies itself (correctly, in my opinion) as "myodbc3.dll".  This is a problem because the nominal version string does not completely identify the version, and because the older version does not seem to be available any longer.

You can verify these differences using the Unix-style command "strings myodbc3.dll | grep odbc3".  I noticed the difference examining Microsoft.NET's System.Data.Odbc.OdbcConnection.Driver property.

How to repeat:
The 6/1/2005 version was downloaded last year sometime, apparently.  I downloaded the 10/15/2005 version today from the Hobbly mirror site in Chicago.

Suggested fix:
Don't put Unix-style strings in the Windows version, and make sure that every different version of the driver is identified uniquely!
[15 May 2006 8:38] Tonci Grgin
Hi Jon. Thanks for your bug report.
Verified as described by reporter:
        string dsn = "Driver={MySQL ODBC 3.51 Driver}" +
                     ";Option=" + option +
                     ";Server=" + server +
                     ";Uid=" + userId +
                     ";Pwd=" + password +
                     ";Port=3307"+
                     ";Database=test";

        OdbcCommand ocmd = new OdbcCommand("use test");
        using (OdbcConnection oconn = new OdbcConnection(dsn))
        {
            ocmd.Connection = oconn;
            oconn.Open();
            ocmd.ExecuteNonQuery();
        }

Output:oconn.Driver	"libmyodbc3.so"	string
[13 Jul 2006 13:00] Bogdan Degtyariov
Bug has been fixed. This fix also solves the problem with query logging in debug version of MyODBC. Fix was sent to developers for review.
[13 Mar 2007 11:53] Bogdan Degtyariov
Fixed in 3.51.14. Added the proper library name in the code for WIN section.
[12 Jun 2007 10:26] MC Brown
A note has been added to the 3.51.14 changelog.