Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Der MySQL ODBC 5.1-Treiber gibt einen falschen Datentyp an ADODB zurück

OK, durch den Ausschlussprozess habe ich das Problem endlich entdeckt. Nicht sicher warum dies passiert, aber es muss ein Fehler im MySQL ODBC-Treiber sein.

Ganzzahlige Felder mit dem Attribut UNSIGNED verursachen den Fehler. Das Entfernen dieses Attributs bewirkt, dass der Feldwert als Standard-Integer-Typ zurückgegeben wird. Anscheinend handhabt der ODBC-Treiber die Umwandlung von unsigned int in den Typ vbscript Integer nicht richtig und gibt stattdessen einen Zeiger auf einen Long zurück.

Ich habe dieses Problem auch bei tinyint(1)-Feldern bemerkt, die ich als boolesche Werte verwendet habe. Das Ändern des Datentyps von tinyint(1) zu int(11) [Standardeinstellung] hat diesen Fehler ebenfalls behoben.

Hoffentlich hilft dies jemand anderem. FYI Ich habe dieses Problem auch im MySQL ODBC Driver Forum gepostet, aber niemand hat sich die Mühe gemacht zu antworten.