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

 

Il nuovo articolo Come accedere al database MySQL da MQL5 (MQL4) è stato pubblicato:

L'articolo descrive lo sviluppo di un'interfaccia tra MQL e il database MySQL. Espone le soluzioni pratiche esistenti e offre un modo più conveniente per implementare una libreria da utilizzare per lavorare con i database. L'articolo contiene una descrizione dettagliata delle funzioni, della struttura dell'interfaccia, degli esempi e di alcune caratteristiche specifiche per lavorare con MySQL. Per quanto riguarda le soluzioni software, gli allegati agli articoli includono i file delle librerie dinamiche, la documentazione ed esempi di script per i linguaggi MQL4 e MQL5.

L'interazione con il terminale MetaTrader (tramite programmi MQL) può essere implementata con l'aiuto dei seguenti componenti:

schema di interazione MQL e MySQL

1. La libreria di interfaccia MQLMySQL.mqh. Viene aggiunta al progetto utilizzando la directory #include e può essere modificata a proprio piacimento.

Contiene le direttive per l'importazione delle funzioni della libreria dinamica MQLMySQL.dll, nonché le funzioni per poterle chiamare e gestire gli errori.

2. La libreria dinamica MQLMySQL.dll. È un wrapper per accedere alle funzionalità della libreria standard libmysql.dll.

Inoltre, la libreria MQLMySQL.dll elabora i risultati delle operazioni e l'accesso condiviso alle connessioni e ai cursori del database. Questo significa che si possono creare e utilizzare più connessioni contemporaneamente (da uno o più programmi MQL), tenere aperti alcuni cursori, con query a uno o più database. I mutex vengono utilizzati per separare l'accesso alle risorse condivise.

3. La libreria dinamica standard libmysql.dll è un driver di accesso nativo. Puoi copiarlo da qualsiasi distribuzione del database MySql in C:\Windows\Sytem32 o <Terminal>\MQL5\Libraries (per MetaTrader 4 in <Terminal>\MQL4\Libraries).

È infatti responsabile dell'invio delle query al database e del recupero dei risultati.

Soffermiamoci sui punti principali: apertura/chiusura della connessione, esecuzione di query DML/DDL e selezione dei dati.

Autore: Eugeniy Lugovoy

Motivazione: