Discussão do artigo "Como acessar o banco de dados MySQL a partir do MQL5 (MQL4)" - página 8

Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
Olá, James,
Atualmente, estou trabalhando no Upwork apenas em um grande projeto. Portanto, não tenho muito tempo livre atualmente. Qual é o problema que você tem com as bibliotecas? Como posso ajudá-lo?
Por que tudo parou de funcionar após a atualização para o build 890 mt4?
O registro diz que a violação de acesso foi lida para 0x00000000 em 'D:\MT4\MQL4\libraries\MQLMySQL.dll'.
também interessado em ...
Estou ansioso por isso!
MT4 build 890 x32 acabou de ser verificado. Tudo está funcionando.
Registro da execução dos scripts de teste:
Pessoal, esclareçam:
1. Em que operação ocorre a mensagem"Access violation read" ?
2. Ao executar o script MySQL-001, qual versão do MQLMySQL é exibida na guia Experts? Deveria ser: MQLMySQL v2.2 x32 Copyright © 2014, FxCodex Laboratory.
3. Qual é a versão do banco de dados MySQL?
4. o MySQL é usado localmente ou em um host remoto?
5. Em qual sistema operacional você executa o terminal?
Verifique e informe, pois não consigo reproduzir o erro.
Vou criar um ambiente semelhante e testar.
Olá,
Aqui está o problema:
Alguma ideia do que poderia ter dado errado?
Desde já, obrigado!
Olá,
Aqui está o problema:
Alguma ideia do que poderia ter dado errado?
Desde já, obrigado!
Olá, Peg,
Para criar uma tabela, use o comando SQL CREATE TABLE http://dev.mysql.com/doc/refman/5.7/en/create-table.html
Para inserir dados, use o comando SQL INSERT INTO https://dev.mysql.com/doc/refman/5.6/en/insert.html
Para executar esses comandos, use a função MySqlExecute.
Você também pode fornecer seu código para que eu possa resolver o problema.
Olá Peg,
Para criar uma tabela, use o comando SQL CREATE TABLE http://dev.mysql.com/doc/refman/5.7/en/create-table.html
Para inserir dados, use o comando SQL INSERT INTO https://dev.mysql.com/doc/refman/5.6/en/insert.html
Para executar esses comandos, use a função MySqlExecute.
Além disso, você pode fornecer seu código e eu poderei descobrir o problema.
Olá, Eugeniy,
Obrigado pelos links.
Inicialmente, usei seu código para me conectar ao meu banco de dados (eu estava usando o mySql Server, caso fosse útil). E consegui ver a tabela. Em seguida, alterei o nome da tabela em seu script MySQL-002 (como você pode ver abaixo) e, embora parecesse funcionar, ele não criava minha tabela. Agora estou usando o WampServer e obtenho:
0 11:09:37.579 Script MySQL-002 EURUSD,H1: carregado com sucesso
0 11:09:37.730 MySQL-002 EURUSD,H1: inicializado
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: , Usuário: , Banco de dados:
0 11:09:37.730 MySQL-002 EURUSD,H1: Conectando...
0 11:09:37.741 MySQL-002 EURUSD,H1: Conectado! DBID#0
0 11:09:37.742 MySQL-002 EURUSD,H1: A tabela `table` não pode ser criada. Error: Aucune base n'a ?t? s?lectionn?e
0 11:09:37.742 MySQL-002 EURUSD,H1: Desconectado. Script concluído!
0 11:09:37.742 MySQL-002 EURUSD,H1: uninit reason 0
0 11:09:37.743 Script MySQL-002 EURUSD,H1: removido
Olá, Eugeniy,
Obrigado pelos links.
Inicialmente, usei seu código para me conectar ao meu banco de dados (eu estava usando o mySql Server, caso fosse útil). E consegui ver a tabela. Em seguida, alterei o nome da tabela em seu script MySQL-002 (como você pode ver abaixo) e, embora parecesse funcionar, ele não criava minha tabela. Agora estou usando o WampServer e obtenho:
0 11:09:37.579 Script MySQL-002 EURUSD,H1: carregado com sucesso
0 11:09:37.730 MySQL-002 EURUSD,H1: inicializado
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: , Usuário: , Banco de dados:
0 11:09:37.730 MySQL-002 EURUSD,H1: Conectando...
0 11:09:37.741 MySQL-002 EURUSD,H1: Conectado! DBID#0
0 11:09:37.742 MySQL-002 EURUSD,H1: A tabela `table` não pode ser criada. Error: Aucune base n'a ?t? s?lectionn?e
0 11:09:37.742 MySQL-002 EURUSD,H1: Desconectado. Script concluído!
0 11:09:37.742 MySQL-002 EURUSD,H1: uninit reason 0
0 11:09:37.743 Script MySQL-002 EURUSD,H1: removido
Com base no erro que vejo no seu registro: 0 11:09:37.742 MySQL-002 EURUSD,H1: Table `table` cannot be created.
Você está usando o nome "table", que é a palavra-chave do banco de dados mysql e não pode ser usado como nome de tabela. Tente mudar para "table1", por exemplo, apenas para verificar se funciona.
É possível que o banco de dados não tenha sido selecionado ou não tenha sido definido. Você pode executar o comando "USE database_name" logo após a conexão, em que database_name é o nome do seu banco de dados.
Por exemplo, se meu banco de dados for "mysql":
DB = MySqlConnect(Host, User, Password, Database, Port, Socket, ClientFlag);
if (DB ==-1) { Print ("Connection failed! Error: "+MySqlErrorDescription); } else { Print ("Connected! DBID#",DB);}
MySqlExecute(DB, "USE mysql");