Fox-id.org :: Komunitas FoxPro Indonesia

General Category => SQL Database => Topic started by: harry_buana on October 23, 2018, 07:13:13 PM

Title: Sqlpassthru error after update to Mysql 8
Post by: harry_buana on October 23, 2018, 07:13:13 PM
Dear,

sy ada kasus seperti ini:

O/S: Windows 10 64bit
Program; VFP 9 SP2
Database: Mysql 8.0.12
Driver : Mysql 8.0 & Mysql 5.3

Setup koneksi sbb:

***** pakai driver 5.3

   lcStringConn="Driver={MySQL ODBC 5.3 ANSI Driver};Port=3306"+;
             ";Server="+lcServer+;
             ";Database="+lcDatabase+;
             ";Uid="+usr+;
             ";Pwd="+pswd

***** pakai driver 8.0

   lcStringConn="Driver={MySQL ODBC 8.0 ANSI Driver};Port=3306"+;
             ";Server="+lcServer+;
             ";Database="+lcDatabase+;
             ";Uid="+usr+;
             ";Pwd="+pswd

   ServerStrConn=Sqlstringconnect(lcStringConn)
   =SQLSetprop(ServerStrConn,"PacketSize",8000)
   =SQLSetprop(ServerStrConn,"DispLogin",3)

SPT-nya sbb:

SqlCommand="Select * from Table_a where Key1=?Param_1 and Key2=?Param_2"
SQLOK=SQLEXEC( ServerStrConn, SQLCommand )


Jika SqlCommand diatas sy jalankan menggunakan Driver 5.3 maka tidak ada error (SQLOK=1), data ada sesuai parameter.
Jika SqlCommand diatas sy jalankan menggunakan Driver 8.0 maka tidak ada error (SQLOK=1), data tidak ditemukan (sepertinya parameternya tidak ada/tidak terbaca).

jika sy rubah SPT-nya sbb:

SqlCommand="Select * from Table_a where Key1=' "+Param_1 +" ' and Key2= ' "+Param_2+ " ' "
SQLOK=SQLEXEC( ServerStrConn, SQLCommand )

Jika SqlCommand diatas sy jalankan menggunakan Driver 8.0 maka tidak ada error (SQLOK=1), data ada sesuai parameter.

Apakah ada yang sudah pernah dan tau solusinya?

Terima kasih sebelumnya para master disini...