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

 

Hallo Sir, mein MT4 zeigt :Connection failed! Error: Maximum connections exceeded.-wie kann ich mit diesem Problem umgehen? Ich vermute, die Maximum connections are 32,wie kann ich die Verbindungen auf z.B. 64 erhöhen ?

Vielen Dank für Ihre Hilfe, Sir.

 
illman:

Hallo Sir, mein MT4 zeigt :Connection failed! Error: Maximum connections exceeded.-wie kann ich mit diesem Problem umgehen? Ich vermute, die Maximum connections are 32,wie kann ich die Verbindungen auf z.B. 64 erhöhen ?

Vielen Dank für Ihre Hilfe, Sir.

Hallo,

Ja, die maximale Anzahl der Verbindungen ist 32.

Versuchen Sie, Ihr MQL-Programm, das auf MQLMySQL.dll basiert, auf mehr als 32 Karten gleichzeitig zu verwenden?

Oder haben Sie einfach vergessen, die Verbindung in Ihrem Programm zu schließen?

Um die maximale Anzahl der Verbindungen von 32 auf eine andere zu ändern, müssen Sie die MQLMySQL.DLL neu erstellen. Die Quellen sind dem Artikel beigefügt, Sie müssen:

1. Entpacken Sie die Quellen von "MQLMySQL DLL Projekt MSVS-2010.zip"

2. Laden Sie das Projekt in MS Visual Studio 2010 oder höher

3. Öffnen Sie die Datei "MQLMySQL.h"

4. Suchen Sie den String:

// Definition der Datenbank
#define  MAX_CONNECTIONS 32

und ersetzen Sie den Wert 32 durch 64 oder was immer Sie wollen

// Definition der Datenbank
#define  MAX_CONNECTIONS 64

5. Bauen Sie das Projekt neu auf

6. Ersetzen Sie eine alte DLL in Ihrem Metatrader-Datenordner durch eine neu kompilierte.

Mit freundlichen Grüßen,

Eugene

 

elugovoy:

Weil ich viele Fremddaten für meinen Index verwende, werden die Verbindungen sehr groß, sobald sie mehr als 32 sind, meldet MT4 einen Fehler und zeigt nichts in den Indexfenstern an.

Vielen Dank für Ihre Hilfe und die Mühe, die Sie sich mit der Entwicklung gemacht haben!


Hallo,

Ja, die maximale Anzahl von Verbindungen ist 32

Versuchen Sie, Ihr MQL-Programm, das auf MQLMySQL.dll basiert, auf mehr als 32 Diagrammen gleichzeitig zu verwenden?

Oder haben Sie einfach vergessen, die Verbindung in Ihrem Programm zu schließen?

Um die maximale Anzahl der Verbindungen von 32 auf eine andere zu ändern, müssen Sie die MQLMySQL.DLL neu erstellen. Die Quellen sind dem Artikel beigefügt, Sie müssen:

1. Entpacken Sie die Quellen von "MQLMySQL DLL Projekt MSVS-2010.zip"

2. Laden Sie das Projekt in MS Visual Studio 2010 oder höher

3. Öffnen Sie die Datei "MQLMySQL.h"

4. Suchen Sie die Zeichenkette:

und ersetzen Sie den Wert 32 durch 64 oder was immer Sie wollen

5. Bauen Sie das Projekt neu auf

6. Ersetzen Sie eine alte DLL in Ihrem Metatrader-Datenordner durch eine neu kompilierte.

Mit freundlichen Grüßen,

Eugene

 

Zunächst einmal, vielen Dank für die Lib, ist bei weitem die bessere Lösung da draußen und die meisten dokumentiert.

Ich habe mich gefragt, ob es eine Möglichkeit gibt, die betroffenen Zeilen nach einer Aktualisierungsanweisung zu erhalten, um eine Einfügung auszuführen, wenn aktualisierte Datensätze 0 ist (die Aktualisierung erfolgreich, nur keine Datensätze aktualisieren, weil die "wo" Filterbedingungen).

Ich möchte kein "insert on duplicate key update" verwenden, da in 99,9 % der Fälle die Aktualisierungsanweisung tatsächlich einen Datensatz aktualisiert (der bereits vorhanden ist) und daher keine Notwendigkeit besteht, die Einfügung auszuführen. Ich denke, es gibt eine Auswirkung auf die Leistung versuchen, immer ohne Notwendigkeit einfügen.

Vielen Dank im Voraus!

 
jmhoms:

Zunächst einmal, vielen Dank für die Lib, ist bei weitem die bessere Lösung da draußen und die meisten dokumentiert.

Ich habe mich gefragt, ob es eine Möglichkeit gibt, die betroffenen Zeilen nach einer Aktualisierungsanweisung zu erhalten, um eine Einfügung auszuführen, wenn aktualisierte Datensätze 0 ist (die Aktualisierung erfolgreich, nur keine Datensätze aktualisieren, weil die "wo" Filterbedingungen).

Ich möchte kein "insert on duplicate key update" verwenden, da in 99,9 % der Fälle die Aktualisierungsanweisung tatsächlich einen Datensatz aktualisiert (der bereits vorhanden ist) und daher keine Notwendigkeit besteht, die Einfügung auszuführen. Ich denke, es gibt eine Auswirkung auf die Leistung versuchen, immer ohne Notwendigkeit einfügen.

Vielen Dank im Voraus!

Hallo lieber Freund,

Wenn Sie MSVC 2010 haben, können Sie die Quellen von MQLMySQL.DLL herunterladen und die Funktion hinzufügen, die Sie brauchen; die MySQL C++ API hat eine solche Funktion (http://dev.mysql.com/doc/refman/5.0/en/mysql-affected-rows.html)

Oder ich kann es für Sie tun, aber im Moment habe ich keine Zeit dafür, kann am Wochenende (7-8 März, 2015) tun, ist es in Ordnung für Sie?

Mit freundlichen Grüßen,

Eugene

 
elugovoy:

Hallo lieber Freund,

Wenn Sie MSVC 2010 haben, können Sie die Quellen von MQLMySQL.DLL herunterladen und die Funktion hinzufügen, die Sie benötigen; die MySQL C++ API hat eine solche Funktion(http://dev.mysql.com/doc/refman/5.0/en/mysql-affected-rows.html)

Oder ich kann es für Sie tun, aber im Moment habe ich keine Zeit für diese, kann am Wochenende (7-8 März, 2015) zu tun, ist es in Ordnung für Sie?

Mit freundlichen Grüßen,

Eugene

Natürlich funktioniert es bei mir !!!

Ich danke Ihnen sehr.

Josep M.

 

Hallo Eugeniy,

hattest du schon die Möglichkeit, dir die Funktion "betroffene Zeilen" anzusehen?

Viele Grüße,

Josep M.

 
jmhoms:

Hallo Eugeniy,

hattest du schon die Möglichkeit, dir die Funktion "betroffene Zeilen" anzusehen?

Viele Grüße,

Josep M.

Hallo Josep,

ich habe dir in einer privaten Nachricht geantwortet.

Wie auch immer, ich poste hier die v2.2. Getestet auf MT4. Wenn Sie Probleme mit MT5 (x32/x64) haben, lassen Sie es mich wissen.

Viel Spaß beim Arbeiten!

Dateien:
MQL4_x32.zip  1073 kb
MQL5_x32.zip  1073 kb
MQL5_x64.zip  1076 kb
MQLMySQL_v2_2.zip  5072 kb
 
elugovoy:
Für x64-Plattformen verwenden Sie die folgende Bibliothek (mit Diskussion)
Zugriffsverletzung beim Lesen auf 0x72656472
 

Hallo, welche Version des MT5-Terminals verwenden Sie?

Welche Version des MT5-Terminals verwenden Sie?

Bitte versuchen Sie das letzte Update der MQLMySQL-Bibliotheken, das hier angehängt ist.

Dateien:
MQL4_x32.zip  1073 kb
MQL5_x32.zip  1073 kb
MQL5_x64.zip  1076 kb
MQLMySQL_v2_2.zip  5072 kb