Erreur MySQL lorsque vous soumettez plus d'une requête en utilisant vba

J'ai un problème étrange lorsque j'essaie d'envoyer cette requête MySQL:

insert into tblWydatkiPLN( IDDelegacji, IDKategoria, IDTypTransakcji, Kwota, Opis ) values( '13', '3', '1', '44.15', 'Taxi' ); insert into tblWydatkiPLN( IDDelegacji, IDKategoria, IDTypTransakcji, Kwota, Opis ) values( '13', '3', '1', '57.71', 'Taxi' ); 

en utilisant vba. Je l'envoie avec ce code (en utilisant la variable strSQL):

 Set DBConnection = CreateObject("ADODB.Connection") DBConnection.Open strConnSsortingng Debug.Print strSQL If InStr(strSQL, "select") = 1 Then Set DBRecordset = CreateObject("ADODB.Recordset") DBRecordset.Open strSQL, DBConnection, adOpenStatic If Not DBRecordset.EOF Then myArray = DBRecordset.GetRows() End If Set DBRecordset = Nothing Else DBConnection.Execute strSQL End If Set DBConnection = Nothing 

C'est le message d'erreur que je reçois:

"[MySQL] [Pilote ODBC 5.2 (w)] [mysqld-5.5.35-MariaDB] Vous avez une erreur dans votre syntaxe SQL; vérifiez le manuel correspondant à votre version du server MariaDB pour la syntaxe correcte"

Il est étrange que lorsque je soumette une déclaration unique, elle fonctionne parfaitement. Je me rends count qu'une solution de contournement serait d'envoyer ces déclarations une par une, mais cela ne semble pas être une solution optimale.

Merci d'avance, toute aide serait très appréciée.

Le problème semble être lorsque vous essayez d'effectuer plusieurs actions dans une seule connection ADODB et il apparaît que vous n'êtes pas la seule personne avec ce problème si vous regardez dans les bons endroits. Une solution que j'ai vue offerte consiste à utiliser la syntaxe d'insertion de plusieurs lignes:

 INSERT INTO tblWydatkiPLN( IDDelegacji, IDKategoria, IDTypTransakcji, Kwota, Opis ) VALUES ('13', '3', '1', '44.15', 'Taxi') , ( '13', '3', '1', '57.71', 'Taxi' ) 

Vous pourriez find les articles suivants utiles (trouvés par googling "actions multiples adodb"):