Adjuntar MySQL a MQ4

 

¡Hola, queridos expertos!

Cuando escribo un Asesor Experto, realmente echo de menos la posibilidad de acceder a la base de datos.

Por favor, dígame cómo conectarse a la base de datos.

Como ya estoy familiarizado con MySQL, es mejor utilizarlo.

 
 
Eugene1:

¡Hola, queridos expertos!
Realmente echo de menos la posibilidad de acceder a la base de datos cuando se escribe un Asesor Experto.
Por favor, indíqueme cómo conectarse a la base de datos.
Como ya estoy familiarizado con MySQL, es mejor utilizarlo.


Lamentablemente, sólo se pueden añadir datos a la base de datos mediante MQL.

Pero leer de él - sólo con la ayuda de su DLL.

 

También es posible leer utilizando la DLL estándar de MySQL.

Hay una serie de complicaciones, pero todas son solucionables.

 
HIDDEN:

También es posible leer utilizando la DLL estándar de MySQL.

Hay una serie de complicaciones, pero todas son solucionables.


¿Cómo se resuelve?
vio su hilo https://www.mql5.com/ru/forum/129879
 

En realidad MKL4 funciona normalmente con muscle (recibe y envía datos) a través de libmySQL.dll. No hay ningún problema con MKL4, pero con MKL5 hay un gran problema debido al Unicode. En la base de datos de información se envía normalmente, pero regresó jeroglíficos (si usted navegar por la base de datos en otros programas, todos los mostrados normalmente). En esta etapa tuve que escribir un convertidor dll para MKL5.

//----------------------------------------------------------+
function a2u(var s:pansichar):PWideChar; stdcall;
//----------------------------------------------------------+
var
  w: WideString;
begin
  w := s;
  Result := PWideChar(w);
end;

El código está en Delphi. El músculo está trabajando con MT5 de tal manera. Quiero deshacerme de esta dll, agradecería que alguien me dijera cómo hacerlo.

Tengo una clase para trabajar con SQLite de MT5, hay una propuesta para escribir una clase similar para el músculo.

Otra cosa curiosa sobre el músculo es que libmySQL.dll tiene errores constantes que hacen que el terminal se bloquee o detenga el programa. Recomiendo encarecidamente cambiar a MariaDB. Es totalmente compatible con muscle y funciona de forma mucho más estable, desde hace 2 semanas aún no ha aparecido ningún error.

 
Graff:

De hecho, MKL4 funciona normalmente con muscle (recibe y envía datos) a través de libmySQL.dll. No hay problemas con MKL4

¿cómo se obtienen los datos del puntero de la estructura devuelta?
 
sergeev:
¿cómo se obtienen los datos del puntero de la estructura devuelta?


Si usted puede ayudar a escribir ansi a unicode convertidor para MKL5, el código de los cuales se da en el post anterior. Te enviaré el código de trabajo para MKL4, también te ayudará cuando escribas la clase para MKL5.
 
Graff:

el convertidor de ansi a unicode para MKL5, cuyo código se da en el post anterior.

en delphi no tanto. necesito ver el problema, ya que en MQL se puede resolver de diferentes maneras. o mediante uchar array o CharToString etc.

 
sergeev:

Necesito ver el problema, porque en MQL se puede resolver de diferentes maneras. o mediante uchar array o CharToString etc.


Agrégame en Skype o ICQ (contactos en mi perfil en el sitio web de MKL5). Te enviaré todo el código fuente de MKL4 y MKL5 a la vez, pero necesito ayuda con la conversión de cadenas.
 
Graff:

Agrégame en Skype o ICQ (contactos en mi perfil en el sitio web de MKL5). Te enviaré todo el código fuente de MKL4 y MKL5 a la vez, pero necesito ayuda con la conversión de líneas.

Mejor en persona.