Attacher MySQL à MQ4 - page 3

 
HIDDEN:

Mise en œuvre du code complet....

vidage SQL de la base de données

Résultat du travail


Non, l'interrogation d'un seul champ est une béquille.
Soit vous avez besoin d'une solution normale, soit vous ne vous en occupez pas... à la dll

 
HIDDEN:

N'est-il pas possible de récupérer un tableau entier en une seule fois avec une seule requête ?
 
sergeev:


Non, l'interrogation d'un seul champ est une béquille.
Soit vous avez besoin d'une solution normale, soit vous ne vous en occupez pas... Dans le dll


Il y a donc une DLL qui vous permet de lire des tableaux et qui fonctionne de manière cohérente ou non ?

Les plaintes concernant l'emballage sont-elles obsolètes ?

 
Eugene1:


Il existe donc une DLL qui vous permet de lire des tableaux et qui fonctionne de manière stable ou non ?

Les plaintes concernant l'emballage sont-elles obsolètes ?


Avez-vous essayé l'une des suggestions ? ou faites-vous un sondage ?
 
sergeev:

Avez-vous essayé l'une de ces suggestions ou faites-vous des sondages ?


Je l'essaierais si l'une des options me convenait.

J'ai un projet spécifique. Je veux améliorer un peu mon Expert Advisor, mais je ne peux pas aller plus loin sur les tableaux, je dois connecter la base, mais c'est la même chose que sur les tableaux pour extraire un champ à la fois de la base.

Quant à la stabilité, mon Expert Advisor est déjà instable. Si on ajoute une instabilité de plus, je ne saurai pas pourquoi le trader est tombé.

Et le plantage, d'ailleurs, est assez désagréable, car il introduit des perturbations dans le système de fichiers du disque système.

Régulièrement, le système de fichiers doit être réparé, ce qui, vous en conviendrez, ne peut durer longtemps - le système finira par tomber en panne.

C'est pourquoi je suis obligé de commencer exactement par un sondage maintenant. Je suis prudent.

Il est maintenant important pour moi de trouver une solution fiable (si elle existe, bien sûr), mais je dois lire un tableau d'environ 10 000 doublets à la fois. Un à la fois - pas question.

Pouvez-vous me donner quelques indications sur le sujet ?

 
On vous a déjà dit beaucoup de choses. Tout ce que vous devez faire, c'est prendre une décision et travailler.
 
stringo:


MQL5 dispose de fonctions pour la conversion Unicode. Voir /fr/docs/convert/chararraytostring et /fr/docs/convert/stringtochararray.

Déclarer des tableaux uchar au lieu de chaînes de caractères dans l'importation de fonctions


Comment la chaîne mysql_fetch_row(int result) ; appelée depuis le DLL est-elle censée renvoyer un tableau uchar ? Sans réécrire la dll ou écrire un wrapper ?
 

exporter


avatar
1
R_ME 07.08.2011 18:47

J'ai l'idée d'écrire quelque chose comme une API pour MT4, par exemple pour écrire des EAs en C++.

Mais, quand j'ai commencé à écrire le dll, j'ai découvert que puisque l'EA est exécuté une fois par tick, il est terriblement long de traduire les données dans mon programme via les EA.

Question : existe-t-il une possibilité d'envoyer les données de MT(EA) par exemple vers une base de données MySQL ?

J'aime les EAs en termes de placement d'ordres mais il est horrible, par exemple, d'implémenter des fonctions comme iHigh de cette manière (

 
Graff:

Comment la fonction string mysql_fetch_row(int result) ;, qui est appelée depuis le dll, peut-elle retourner un tableau uchar ? Sans réécrire la dll ou écrire un wrapper ?

Je vais aborder notre sujet.

Bref, j'ai expérimenté memcpy et strcpy hier. Tout fonctionne. C'est-à-dire que maintenant, même si une fonction vvprays un pointeur, ce n'est plus un problème. Vous pouvez travailler avec eux.

 
sergeev:

Je vais aborder notre sujet.

Bref, j'ai expérimenté memcpy et strcpy hier. Tout fonctionne. C'est-à-dire que maintenant, même si une fonction vovrille un pointeur, ce n'est plus un problème. Vous pouvez travailler avec eux.

Postez un exemple de vos résultats, comme le code lui-même et comment il fonctionne.
Raison: