Discussione sull’articolo "Come accedere al database MySQL da MQL5 (MQL4)" - pagina 8
Ti stai perdendo delle opportunità di trading:
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Registrazione
Accedi
Accetti la politica del sito e le condizioni d’uso
Se non hai un account, registrati
Ciao James,
Attualmente sto lavorando su Upwork solo su un grande progetto. Quindi, non ho molto tempo libero al giorno d'oggi. Qual è il problema che hai con le librerie? Come posso aiutarti?
Perché tutto ha smesso di funzionare dopo l'aggiornamento alla build 890 di mt4?
Il log dice che la violazione dell'accesso viene letta a 0x00000000 in 'D:\MT4\MQL4\libraries\MQLMySQL.dll'.
anche interessato a ...
Non vedo l'ora di farlo!
MT4 build 890 x32 appena controllato. Tutto funziona.
Log dell'esecuzione degli script di test:
Ragazzi, chiarite:
1. Su quale operazione dà"Violazione dell'accesso in lettura"??
2. Quando si esegue lo script MySQL-001, quale versione di MQLMySQL viene mostrata nella scheda Esperti? Dovrebbe essere: MQLMySQL v2.2 x32 Copyright © 2014, FxCodex Laboratory.
3. Quale versione del database MySQL?
4. MySQL è utilizzato localmente o su un host remoto?
5. Sotto quale sistema operativo viene eseguito il terminale?
Per favore, controllate e riferite, perché non riesco a riprodurre l'errore.
Creerò un ambiente simile e lo testerò.
Salve,
Ecco il problema:
Qualche idea su cosa possa essere andato storto?
Grazie in anticipo!
Salve,
Ecco il problema:
Qualche idea su cosa possa essere andato storto?
Grazie in anticipo!
Ciao Peg,
Per creare una tabella, utilizzare il comando SQL CREATE TABLE http://dev.mysql.com/doc/refman/5.7/en/create-table.html.
Per inserire i dati utilizzare il comando SQL INSERT INTO https://dev.mysql.com/doc/refman/5.6/en/insert.html
Per eseguire tali comandi utilizzare la funzione MySqlExecute.
Inoltre puoi fornire il tuo codice e sarò in grado di capire il problema.
Ciao Peg,
Per creare una tabella, utilizzare il comando SQL CREATE TABLE http://dev.mysql.com/doc/refman/5.7/en/create-table.html.
Per inserire i dati, utilizzare il comando SQL INSERT INTO https://dev.mysql.com/doc/refman/5.6/en/insert.html.
Per eseguire tali comandi utilizzare la funzione MySqlExecute.
Inoltre puoi fornire il tuo codice e sarei in grado di capire il problema.
Ciao Eugeniy,
Grazie per i link.
All'inizio ho usato il tuo codice per connettermi al mio database (stavo usando mySql Server, nel caso sia utile). E ho potuto vedere la tabella. Poi ho cambiato il nome della tabella nel tuo script MySQL-002 (come puoi vedere qui sotto) e sembrava funzionare, ma non ha creato la mia tabella. Ora sto usando WampServer e ottengo:
0 11:09:37.579 Script MySQL-002 EURUSD,H1: caricato con successo
0 11:09:37.730 MySQL-002 EURUSD,H1: inizializzato
0 11:09:37.730 MySQL-002 EURUSD,H1: MQLMySQL v2.0 Demo Copyright © 2014, FxCodex Laboratory
0 11:09:37.730 MySQL-002 EURUSD,H1: Host: , Utente: , Database:
0 11:09:37.730 MySQL-002 EURUSD,H1: Connessione...
0 11:09:37.741 MySQL-002 EURUSD,H1: Connesso! DBID#0
0 11:09:37.742 MySQL-002 EURUSD,H1: La tabella `table` non può essere creata. Errore: Aucune base n'a ?t? s?lectionn?e
0 11:09:37.742 MySQL-002 EURUSD,H1: Disconnesso. Script terminato!
0 11:09:37.742 MySQL-002 EURUSD,H1: disconnessione motivo 0
0 11:09:37.743 Script MySQL-002 EURUSD,H1: rimosso
Ciao Eugeniy,
Grazie per i link.
All'inizio ho usato il tuo codice per connettermi al mio database (stavo usando mySql Server, nel caso sia utile). E ho potuto vedere la tabella. Poi ho cambiato il nome della tabella nel tuo script MySQL-002 (come puoi vedere qui sotto) e sembrava funzionare, ma non ha creato la mia tabella. Ora sto usando WampServer e ottengo:
0 11:09:37.579 Script MySQL-002 EURUSD,H1: caricato con successo
0 11:09:37.730 MySQL-002 EURUSD,H1: inizializzato
0 11:09:37.730 MySQL-002 EURUSD,H1: MQLMySQL v2.0 Demo Copyright © 2014, FxCodex Laboratory
0 11:09:37.730 MySQL-002 EURUSD,H1: Host: , Utente: , Database:
0 11:09:37.730 MySQL-002 EURUSD,H1: Connessione...
0 11:09:37.741 MySQL-002 EURUSD,H1: Connesso! DBID#0
0 11:09:37.742 MySQL-002 EURUSD,H1: La tabella `table` non può essere creata. Errore: Aucune base n'a ?t? s?lectionn?e
0 11:09:37.742 MySQL-002 EURUSD,H1: Disconnesso. Script terminato!
0 11:09:37.742 MySQL-002 EURUSD,H1: disconnessione motivo 0
0 11:09:37.743 Script MySQL-002 EURUSD,H1: rimosso
In base all'errore che vedo nel tuo log: 0 11:09:37.742 MySQL-002 EURUSD,H1: Table `table` cannot be created.
Il nome "table" è una parola chiave del database mysql e non può essere usato come nome di tabella, provate a cambiarlo per esempio in "table1" per verificare se funziona.
oppure è possibile che il database non sia stato selezionato o non sia stato impostato. è possibile eseguire il comando "USE database_name" subito dopo la connessione, dove il database_name è il nome del database.
Per esempio, se il mio database è "mysql":
DB = MySqlConnect(Host, User, Password, Database, Port, Socket, ClientFlag);
if (DB ==-1) { Print ("Connessione fallita! Errore: "+MySqlErrorDescription); } else { Print ("Connesso! DBID#",DB);}
MySqlExecute(DB, "USE mysql");