Discussione sull’articolo "Come accedere al database MySQL da MQL5 (MQL4)" - pagina 17

 

È molto utile.

Ma c'è un problema quando inserisco una parola cinese in mysql usando cmd come questo "INSERT INTO table (name,value) VALUES ('Buy Order','Sell Order');", restituisce &# nbsp;una descrizione di errore "Query is empty". nbsp;una descrizione di errore "La query è vuota".

Come risolvere questo problema.

Come risolvere questo problema.

 

Colleghi, per favore duplicate le release attuali,

Personalmente ho bisogno di una build per MQL5 x64, ma non riesco a scaricarla utilizzando i link del thread - 404

 
Khrisna Gunanasurya:

Ciao, perché ho ricevuto questo messaggio? Come risolverlo?

Connessione fallita! Errore: Impossibile connettersi al server MySQL su 'mysql.hostinger.co.id' (10061) <~~~ prima era 10060, non so perché sta cambiando in questo messaggio

Qualcuno può aiutarmi a risolvere il problema? Ho già provato a cercare su Google ma mi sono scontrato con un muro.

Grazie

Ciao Khrisna, hai risolto l'errore?
 

Salve,

Ho una domanda. Vorrei registrare gli scambi in una tabella MySQL ma ricevo sempre un messaggio di errore che la query è vuota.

Quando stampo l'errore e la query, c'è:

Errore #1065: La query era vuota; 3

Query: INSERT INTO algo_trades (date, time, curr, ticket, error, trade, lot, entry, sl, tp, spread) VALUES ('2017-9-1','14:3:58','GBPUSD',8705334,0,'Sell',2,1.29892,1.29961,1.29812,0.9)

Cosa c'è di sbagliato? Sto usando questa libreria in un altro codice nello stesso modo, e funziona assolutamente bene.

Grazie mille Eugeniy per averla condivisa.

 
cikahun:

Salve,

Ho una domanda. Vorrei registrare gli scambi in una tabella MySQL ma ricevo sempre un messaggio di errore che la query è vuota.

Quando stampo l'errore e la query, c'è:

Errore #1065: La query era vuota; 3

Query: INSERT INTO algo_trades (date, time, curr, ticket, error, trade, lot, entry, sl, tp, spread) VALUES ('2017-9-1','14:3:58','GBPUSD',8705334,0,'Sell',2,1.29892,1.29961,1.29812,0.9)

Cosa c'è di sbagliato? Sto usando questa libreria in un altro codice nello stesso modo, e funziona assolutamente bene.

Grazie mille Eugeniy per averlo condiviso.

Probabilmente è più veloce usare Google.

http://www.joellipman.com/articles/sql/error-1065-query-was-empty.html

SQL
  • 2012.12.13
  • Joel Lipman
  • www.joellipman.com
Posted on Dec 13, 12 at 01:12 PM What? In view of the fact that this error pops up in so many systems I take over, I have often gone down the wrong path following the red herring as it were when in fact the answer to this is very common. Why? Bespoke systems are the usual suspects. Developers will have told the system what to do when...
 
Alain Verleyen:

Probabilmente è più veloce usare Google.

http://www.joellipman.com/articles/sql/error-1065-query-was-empty.html


Ciao Alain,

Grazie mille! Sono riuscito a capire cosa non andava.

Nel mio caso il broker mi dà il simbolo della valuta con il segno £. L'ho cancellato e funziona.

Grazie ancora.

 

Ho usato la dll di attechtment per eseguire EA, ma non ha funzionato e il log mostrava

"Impossibile caricare 'C:\Users\cc\AppData\Roaming\MetaQuotes\Tester\67381DD86A2959850232C0BA725E5966\Agent-127.0.0.1-3000\MQL5\libraries\' [193] Impossibile chiamare 'cMySqlVersion' [193] Ho usato la dll di attechtment per eseguire EA ma non ha funzionato e il log ha mostrato MQLMySQL.dll' [193]
Impossibile chiamare 'cMySqlVersion', '... \libraries\MQLMySQL.dll' non è caricato
chiamata di funzione di importazione non risolta".

Sto usando mt5 x64

ed ecco il mio codice.


#include <MQLMySQL.mqh>
//--- parametri di input
string INI;
string Host, User, Password, Database, Socket; // credenziali del database
int Port, ClientFlag; int ClientFlag;
int DB; // identificatore del database
//+------------------------------------------------------------------+
//| Inizializzazione dell'esperto funzione & nbsp; |
//+------------------------------------------- -----------------------+
int OnInit()
{
Print (MySqlVersion());
INI = TerminalInfoString(TERMINAL_PATH) + "\\\\ MQL5\Scripts\MyConnection.ini";
// lettura delle credenziali del database dal file INI
Host = ReadIni(INI, "MYSQL", "Host");
User = ReadIni(INI, "MYSQL", "User");
Password = ReadIni(INI, "MYSQL", "Password");
Database = ReadIni(INI, "MYSQL", "Database");
Port = (int)StringToInteger(ReadIni(INI, "MYSQL", "Port"));
Socket = ReadIni(INI, "MYSQL", " Socket");
ClientFlag = CLIENT_MULTI_STATEMENTS; //(int)StringToInteger(ReadIni(INI, "MYSQL", "ClientFlag"));

Print (" Host: ",Host, ", User: ", User, ", Database: ", Database);

// aprire la connessione al database
Print ("Connecting...") ;

DB = MySqlConnect(Host, User, Password, Database, Port, Socket, ClientFlag);

if (DB == -1)
Print (" Connessione fallita!Errore: "+MySqlErrorDescription);
else Print ("Connected!DBID#",DB);
return 1;
}
//+-------------------- ----------------------------------------------+
//| Funzione di deinizializzazione esperta & nbsp; &nbsp ; |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
{

&nbsp ; MySqlDisconnect(DB);


}
//+--------------------------------------------------------------- ---+
//| Funzione di spunta esperta & nbsp; &nbsp ||
//+------------------------------------------------------------------+
void OnTick()
{
//---
&nbsp; } ------------------------------------------------------------------ //+ ---+ nbsp;
}
//+------------------------------------------------------------------+

il file dll della versione X64 non può essere caricato.

 
Sto usando laquery multi-insert ma non funziona, ma quando uso il single-insert, funziona, questa è la query

Query = Query + "INSERT INTO `history` (an, oi, oc) VALUES (" + (stringa) AccountNumber() + ", " + (stringa) OrderTicket() + ", '" + (stringa) OrderComment() + ");";


Cosa sbaglio? Funziona solo con l'inserimento singolo.

 
Eugeniy Lugovoy:

Hmmm... è da qualche parte nella vecchia libreria, nelle ultime versioni (postate nella discussione) ho le regole se la memoria non mi inganna :)

Ok, allora il problema UTF rimane. Cercherò di risolverlo questa settimana fino al fine settimana, se non sono oberato di lavoro.

Buon pomeriggio Eugene.

Grazie mille per questa libreria, la uso attivamente nel mio progetto.

Potresti dirmi se sei riuscito a risolvere il problema con UTF? E come posso scaricare la versione attuale?

Ho bisogno della build MQL4 x32-x64. Grazie ancora. )

 
potete aiutarmi a cambiare il charset in UTF-8, grazie mille