Diskussion zum Artikel "Wie man auf die MySQL-Datenbank von MQL5 (MQL4) aus zugreift" - Seite 17

 

Es ist sehr nützlich.

Aber es gibt ein Problem, wenn ich ein chinesisches Wort in mysql einfügen cmd wie diese "INSERT INTO Tabelle (Name, Wert) VALUES ('Buy Order','Sell Order');", es zurückgeben &# nbsp; eine Fehlerbeschreibung "Query ist leer. nbsp;eine Fehlerbeschreibung "Query is empty."

Wie kann man dieses Problem lösen.

Wie Sie dieses Problem lösen können.

 

Kolleginnen und Kollegen, bitte vervielfältigen Sie die aktuelle(n) Version(en),

Ich persönlich brauche einen Build für MQL5 x64, ich kann ihn nicht über die Links aus dem Thread herunterladen - 404

 
Khrisna Gunanasurya:

Hallo, warum bekomme ich diese Meldung? Wie kann ich sie beheben?

Verbindung fehlgeschlagen! Error: Kann keine Verbindung zum MySQL-Server auf 'mysql.hostinger.co.id' (10061) <~~~ vorher war es 10060, ich weiß nicht, warum es sich zu diesem ändert

Kann mir jemand helfen, das Problem zu lösen? Ich habe schon versucht es zu googeln, aber ich bin auf eine Mauer gestoßen.

Vielen Dank!

Hallo Khrisna, hast du den Fehler gelöst?
 

Hallo!

ich habe eine Frage. Ich möchte den Handel in einer MySQL-Tabelle aufzeichnen, bekomme aber immer eine Fehlermeldung, dass die Abfrage leer ist.

Wenn ich den Fehler und die Abfrage ausdrucke, ist sie da:

Fehler #1065: Abfrage war leer; 3

Abfrage: 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)

Welche Wolke ist falsch? Ich benutze diese Bibliothek in einem anderen Code auf die gleiche Weise, und funktioniert absolut gut.

Vielen Dank Eugeniy für die Freigabe es.

 
cikahun:

Hallo!

ich habe eine Frage. Ich möchte den Handel in einer MySQL-Tabelle aufzeichnen, bekomme aber immer eine Fehlermeldung, dass die Abfrage leer ist.

Wenn ich den Fehler und die Abfrage ausdrucke, ist sie da:

Fehler #1065: Abfrage war leer; 3

Abfrage: 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)

Welche Wolke ist falsch? Ich benutze diese Bibliothek in einem anderen Code auf die gleiche Weise, und funktioniert absolut gut.

Vielen Dank Eugeniy für das Teilen es.

Wahrscheinlich schneller zu verwenden 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:

Wahrscheinlich ist es schneller, Google zu benutzen.

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


Hallo Alain,

herzlichen Dank! Ich konnte herausfinden, was falsch war.

In meinem Fall gibt der Broker mir das Währungssymbol mit einem £-Zeichen. Ich habe es gelöscht und es funktioniert.

Nochmals vielen Dank.

 

Ich habe die attechtment dll verwendet, um EA auszuführen, aber es hat nicht funktioniert und das Protokoll zeigte

"Cannot load 'C:\Users\ccb\AppData\Roaming\MetaQuotes\Tester\67381DD86A2959850232C0BA725E5966\Agent-127.0.0.1-3000\MQL5\libraries\' [193] Cannot call 'cMySqlVersion' [193] Ich habe die attechtment dll verwendet, um EA zu starten, aber es hat nicht funktioniert und das Protokoll zeigte MQLMySQL.dll' [193]
Cannot call 'cMySqlVersion', '... \libraries\MQLMySQL.dll' ist nicht geladen
unresolved import function call"

Ich verwende die mt5 x64

und hier ist mein Code.


#include <MQLMySQL.mqh>
//--- Eingabeparameter
string INI;
string Host, User, Password, Database, Socket; // database credentials
int Port, ClientFlag; int ClientFlag;
int DB; // Datenbankbezeichner
//+------------------------------------------------------------------+
//| Experteninitialisierung Funktion & nbsp; |
//+------------------------------------------- -----------------------+
int OnInit()
{
Print (MySqlVersion());
INI = TerminalInfoString(TERMINAL_PATH) + "\\\ MQL5\\Scripts\\MyConnection.ini";
// Lesen der Datenbank-Anmeldeinformationen aus der INI-Datei
Host = ReadIni(INI, "MYSQL", "Host");
User = ReadIni(INI, "MYSQL", "Benutzer");
Passwort = ReadIni(INI, "MYSQL", "Passwort");
Datenbank = ReadIni(INI, "MYSQL", "Datenbank");
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);

// Datenbankverbindung öffnen
Print ("Connecting...") ;

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

if (DB == -1)
Print (" Verbindung fehlgeschlagen!Fehler: "+MySqlErrorDescription);
else Print ("Verbunden!DBID#",DB);
return 1;
}
//+-------------------- ----------------------------------------------+
//| Experten-Deinitialisierungsfunktion & nbsp; &nbsp |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
{

&nbsp ; MySqlDisconnect(DB);


}
//+--------------------------------------------------------------- ---+
//| Experten-Tick-Funktion & nbsp; &nbsp ||
//+------------------------------------------------------------------+
void OnTick()
{
//---
& nbsp;
}
//+------------------------------------------------------------------+

die X64-Version der dll-Datei kann nicht geladen werden.

 
Ich verwende eineMulti-Insert-Abfrage, aber sie funktioniert nicht, aber wenn ich eine Single-Insert-Abfrage verwende, funktioniert sie, und zwar wie folgt

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


was mache ich falsch? es funktioniert nur mit single-insert

 
Eugeniy Lugovoy:

Hmmm... es ist irgendwo in der alten Bibliothek, in den neuesten Versionen (in der Diskussion gepostet) habe ich die Regeln, wenn ich mich richtig erinnere :)

Ok. dann bleibt noch das UTF-Problem. ich werde versuchen, es diese Woche bis zum Wochenende zu lösen, wenn ich nicht überarbeitet bin.

Guten Tag Eugene.

Vielen Dank für diese Bibliothek, ich verwende sie aktiv in meinem Projekt.

Könnten Sie mir bitte sagen, ob Sie das Problem mit UTF lösen konnten? Und wie kann ich die aktuelle Version herunterladen?

Ich brauche MQL4 x32-x64 build. Nochmals vielen Dank. )

 
können Sie mir helfen, den Zeichensatz auf UTF-8 zu ändern, vielen Dank