Bug #12515 MyOdbc and Recordset
Submitted: 11 Aug 2005 8:58 Modified: 7 Sep 2007 8:26
Reporter: Maroun Merheb Email Updates:
Status: Closed Impact on me:
None 
Category:Connector / ODBC Severity:S1 (Critical)
Version:3.51 OS:Windows (Windows XP)
Assigned to: CPU Architecture:Any

[11 Aug 2005 8:58] Maroun Merheb
Description:
First Of All I worked with The MyOdbc 3.51 and MySql 3.4.0.3 ,it had no major
problems,then due gto the limitation of MySql 4 to subqueries i Upgrade it to
MySql 3.4.1 and I had a problem with the precision in decimal and floats,ect,..
After I Upgrade it to MySql 3.5.0.3 I can not open a recordset outside the mysql
database,It gives the error multiple step errors

What is the resolution of this problem
                                                                    Maroun

How to repeat:
Download MySql 3.4.0.3 and MyOdbc 3.51 (the latest)
Create a database db1 and a table tt1 in it .

Open a vb project that support ADO.

and run the following code

Dim Conn as new adodb.connection
Dim Rs as new adodb.Recordset

conn.open "Driver={MySql ODBC 3.51 Driver};Server=localhost;Database=db1;UId=root;pwd="

rs.open "Select * From tt1",Conn,adopenstatic,adlockPessimistic
[11 Aug 2005 9:15] Vasily Kishkin
Could you please say me what version is 3.4.0.3 ? Did you want to say 4.0.3 ?
I need to know exact version of mysql.
[12 Aug 2005 7:22] Maroun Merheb
I mean the newest version of MySql Mysql 5.0 (Beta or alpha version )
[17 Aug 2005 13:21] Maroun Merheb
The Table must contain a decimal or numeric Field , so the error appears
[22 Aug 2005 9:05] Vasily Kishkin
Sorry. I was not able to reproduve it. It works fine with tables with decimal and numeric fields. Could you please write here error messages ?
[22 Aug 2005 14:01] Maroun Merheb
Mr Vasili 

I use VB6 and MyODBC 3.51.11-2 On Mysql 5.0.11 wich I got it from
mysql-essential5.0.11-beta-win32.msi

This is the code to produce the error

Dim Conn as New ADODB.Connection
Dim RS as New ADODB.Recordset

Private sub Testt
On Error GoTo ERR
	Conn.CursorLocation = adUseClient
	Conn.Open "DRIVER={MySQL ODBC 3.51 Driver};Server=localhost;_
			Database=MySql;UID=root;pwd="
	Conn.Execute "Create Database DB2"
	Conn.Execute "CREATE TABLE DB2.TT1 (T1 DECIMAL NOT NULL,_
			T2 VARCHAR(45) NOT NULL,PRIMARY KEY (T1))ENGINE=InnoDB"
	RS.Open "Select * From DB2.TT1",Conn,AdOpenDynamic,adLockPessimistic
	Debug.Print RS.RecordCount
ERR:
If ERR = 0 then
Else
	MsgBox ERR.Description,vbcritical
	Resume Next
End Sub
[26 Aug 2005 18:32] Jorge del Conde
I was able to reproduce this bug using the following test case:

Dim Conn as New ADODB.Connection
Dim RS as New ADODB.Recordset

Private sub Testt
On Error GoTo ERR
	Conn.CursorLocation = adUseClient
	Conn.Open "DRIVER={MySQL ODBC 3.51 Driver};Server=localhost;_
			Database=MySql;UID=root;pwd="
	Conn.Execute "Create Database DB2"
	Conn.Execute "CREATE TABLE DB2.TT1 (T1 DECIMAL NOT NULL,_
			T2 VARCHAR(45) NOT NULL,PRIMARY KEY (T1))ENGINE=InnoDB"
	RS.Open "Select * From DB2.TT1",Conn,AdOpenDynamic,adLockPessimistic
	Debug.Print RS.RecordCount
ERR:
If ERR = 0 then
Else
	MsgBox ERR.Description,vbcritical
	Resume Next
End Sub
[22 Aug 2007 22:46] MySQL Verification Team
Could you please test with latest released version 3.51.19.
[7 Sep 2007 8:26] Tonci Grgin
Thank you for your bug report. This issue has been committed to our source repository of that product and will be incorporated into the next release.

If necessary, you can access the source repository and build the latest available version, including the bug fix. More information about accessing the source trees is available at

    http://dev.mysql.com/doc/en/installing-source.html

Explanation: Testing with 5.0.48PB and MyODBC3.51.20 pre-release shows no problems.
[7 Sep 2007 8:28] Tonci Grgin
Test case

Attachment: 12515.vbs (application/octet-stream, text), 1.71 KiB.

[7 Sep 2007 8:31] Tonci Grgin
It is my belief that this was fixed long ago but will leave 3.51.20 as version that works for sure as I tested on it.