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
Sim, tudo funciona perfeitamente, mas até agora eu só o fiz para a MQL5
um exemplo de como funciona de cima no meu posto
Você pode me enviar um código relativo ao mysql_fetch_row, não está claro de seu exemplo como buscar células quando o resultado consiste em várias linhas e colunas.
Você pode enviar um código relativo ao mysql_fetch_row, não está claro de seu exemplo como obter células quando o resultado consiste de várias linhas e colunas.
de forma semelhante.
1. tomar mysql_num_rows, mysql_num_fields
2. Obter um ponteiro para um conjunto de ponteiros para a próxima seqüência de caracteres mysql_fetch_row, e um ponteiro para comprimentos de campo mysql_fetch_lengths
3. Nós puxamos esses comprimentos da matriz de comprimentos para nossa própria matriz (via memcpy).
4. de um ponteiro para um conjunto de indicadores de campo, puxe este conjunto de indicadores de campo (já que conhecemos mysql_num_fields).
5. Conhecendo comprimentos dos campos (matriz de comprimentos obtidos de fetch_lengths) e apontadores para os próprios campos, estamos puxando os dados para a matriz uchar de cada campo com memcpy
6. Voltar à cláusula 2.
Eu torci e virei para os dois lados, nada funcionou para mim no 4. Às vezes, o terminal até cai completamente.
Kirill, tudo funciona na MQL4. Eu testei na construção 409 .
Aqui está um exemplo para obter um fio
Resultado
!sql USDCHF,M30: client_info=6.0.0
o mesmo para um conjunto de números inteiros
substituir por
Kirill, tudo funciona na MQL4. Eu testei no build 409 .
aqui está um exemplo para obter o cordel
resultado
!sql USDCHF,M30: client_info=6.0.0
o mesmo se você fizer isso para uma matriz
substituir por
Eu tenho a mesma construção, mas meu terminal trava.... Tenho que experimentá-lo em diferentes terminais de diferentes empresas de corretagem.
Embora possa depender do sistema, estou testando com win7 x64.
HIDDEN:
xp/32
Em seguida, escavar para receber chamadas e entrar em contato diretamente com o Service Desk sobre o bug.
Talvez eles aconselhem o que fazer.
de forma semelhante.
1. tomar mysql_num_rows, mysql_num_fields
2. Obter um ponteiro para um conjunto de ponteiros para a próxima seqüência de caracteres mysql_fetch_row, e um ponteiro para comprimentos de campo mysql_fetch_lengths
3. Nós puxamos esses comprimentos da matriz de comprimentos para nossa própria matriz (via memcpy).
4. de um ponteiro a um conjunto de indicadores de campo, puxe este conjunto de indicadores de campo (já que conhecemos mysql_num_fields).
5. Conhecendo comprimentos dos campos (matriz de comprimentos obtidos de fetch_lengths) e apontadores para os próprios campos, estamos puxando os dados para a matriz uchar de cada campo com memcpy
6. voltar ao passo 2.
Quase lá. Nesta fase, só podemos obter a primeira célula de cada fila. memcpy, por alguma razão, copia apenas o primeiro elemento em minhas matrizes. Matou uma noite inteira. O que eu estou fazendo de errado?
Fonte, lixão, log in appendix.
Está quase pronto. Nesta fase, só posso obter a primeira célula de cada fila. A memcpia copia apenas o primeiro elemento em minhas matrizes por algum motivo. Matou uma noite inteira. O que eu estou fazendo de errado?
Código fonte, dump, log in appendix.
há comentários
1. não há necessidade de utilizar as funções UNICODE2ANSI. Você tem CharArrayToStr e ShortArrayToStr para este fim.
2. eu não tentei usar cordel na strcpy(string strDestination, int strSource); função, tudo foi feito através de arrays. Se você souber o que está copiando da codificação UTF, é melhor armazenar os dados em uma pequena quantidade.
3. aqui você tem um erro técnico (e é por isso que tudo dá errado)
memcpy(alens,lente,num_fields);
Não é uma matriz de bytes como uchar. Preciso de memcpy(alens,lens,num_fields*sizeof(int));
há comentários
1. não há necessidade de utilizar as funções UNICODE2ANSI. Você tem CharArrayToStr e ShortArrayToStr para este fim.
2. eu não tentei usar strcpy(string strDestination, int strSource); função, tudo é feito através de arrays. Se você souber o que está copiando da codificação UTF, é melhor armazenar os dados em uma pequena quantidade.
3. aqui é onde você tem um erro técnico (que faz tudo dar errado)
memcpy(alens,lente,num_fields);
não é uma matriz de bytes únicos como uchar. você precisa de memcpy(alens,lente,num_campos*dimensão do(int));
Obrigado! Está funcionando. Você está planejando liberar uma classe ou biblioteca para trabalhar com o músculo?
Obrigado! Está funcionando. Algum plano para liberar uma classe ou biblioteca para trabalhar com musl?
Se houver necessidade, eu posso. Só não preciso explicar o que já está claro...
Há apenas 50 funções nesta libmysql...
a maioria delas são funções puramente de serviço. dez delas são essenciais para o trabalho.
--------
Como você realmente vê esta classe ou biblioteca? Que funções ela deve ter?
Basta fazer duplicatas de funções de api, ou colocar alguns conjuntos de ações em uma única função?
Se houver necessidade, eu posso. Só não preciso explicar o que já está claro...
Há apenas 50 funções nesta libmysql...
a maioria delas são funções puramente de serviço. dez delas são essenciais para o trabalho.
--------
Em geral, como você vê esta classe ou biblioteca? Que funções ela deve ter?
Creio que a simples descrição das funções da libmysql.dll não é suficiente. A classe deve permitir que o usuário trabalhe com o banco de dados de forma simples e sem esforço.
Exemplo 1: Conexão DB. Para se conectar ao banco de dados através da minha fraca classe, o construtor da classe deve ser chamado, embora toda uma série de ações, nem sempre necessárias ou mesmo necessárias, ocorra dentro da classe.
Exemplo 2: obtendo um resultado multi-linha e multicoluna. Tudo o que o usuário precisa é alimentar a consulta e uma matriz(estrutura) para escrever o resultado.
^ este é um código antigo, só para ter a idéia.
Também poderia haver muitos exemplos sobre como adicionar informações ao banco de dados.
Se você usar apenas um conjunto de funções sem verificações, é muito fácil obter uma violação de acesso lida em 0x00000000 em 'libmysql.dll' e quebrar todo o sistema.
Pronto para considerar a possibilidade de criar uma classe aberta para trabalhar com o músculo.