CONSULTA DE DATAS VB X MYSQL5

JULIO92 16/01/2012 11:38:13
#393312
Oi, estou com uma duvida a respeito desse código em VB6:

[txt-color=#080808]SQL = [Ô]Select * From Cad_Entr Where [Ô]
SQL = SQL & [Ô]Mid(Data,7,4) & Mid(Data,4,2) & Mid(Data,1,2) >= [ô][Ô]
SQL = SQL & Mid(DataInicial.Text, 7, 4) & Mid(DataInicial.Text, 4, 2) & Mid(DataInicial.Text, 1, 2) & [Ô][ô] And [Ô]
SQL = SQL & [Ô]Mid(Data,7,4) & Mid(Data,4,2) & Mid(Data,1,2) <= [ô][Ô]
SQL = SQL & Mid(DataFinal.Text, 7, 4) & Mid(DataFinal.Text, 4, 2) & Mid(DataFinal.Text, 1, 2) & [Ô][ô][Ô]
SQL = SQL & [Ô]Order by Mid(Data,7,4)& Mid(Data,4,2) & Mid(Data,1,2)[Ô][/txt-color]

Estou acostumado ao usar banco de dados ACCESS, e exportei esse banco de dados para MYSQL 5.
Essa consulta busca registros por um período de data, ex: de 01/01/2011 até 01/01/2012. No ACCESS ocorria tudo normal, agora no MYSQLl ele não retorna nenhum registro.

Alguém poderia me ajudar sobre o que pode estar faltando??

Obrigado.
MARCELO.TREZE 16/01/2012 11:47:59
#393313
Veja bem no mysql o campo deve estar como data/hora, acima parece estar como texto, e é pesquisado por partes da string, estranho né.

bom a consulta é simples quando o campo é data e hora só a formatação que muda

SQL = [Ô] SELECT * FROM tabela WHERE campodata BETWEEN [ô][Ô] & Format(txtdataIni.Text,[Ô]YYYY-MM-DD[Ô]) & [Ô][ô] AND [ô][Ô] & Format(txtdataFim.Text,[Ô]YYYY-MM-DD[Ô]) & [Ô][ô][Ô]


viu como é simples



JULIO92 16/01/2012 11:59:24
#393315
valeu vou tentar
JULIO92 19/01/2012 14:41:19
#393647
Então tentei mudar, mas no mysql dá um erro na mudança de varchar para data/hora pois já há registros lá, provalvelmente o erro é causado porque registros são string.

Como já tenho registros inseridos, será q não tem algum código que faça com que ele busque mesmo o campo sendo varchar, porque no trecho abaixo no momento que ele faz o cadastro ele insere um valor de um textbox no tipo texto, mas é no caso é uma data no formato brasileiro e o mysql trabalha no formato YYYY-MM-DD.

SQL = [Ô]Insert Into Cad_Entr(Fornecedor, Nota, Descricao, Quantidade, Data, Observacao, Codigo_Usu, Usuario) Values([ô][Ô] & cmbFornecedores.Text & [Ô][ô],[ô][Ô] & txtNota.Text & [Ô][ô],[ô][Ô] & cmbProdutos.Text & [Ô][ô],[ô][Ô]
SQL = SQL & txtQuantidade.Text & [Ô][ô],[ô][Ô] & Data.Text & [Ô][ô],[ô][Ô] & txtObservacao.Text & [Ô][ô],[ô][Ô] & Codigo & [Ô][ô],[ô][Ô] & Globais.Usuario & [Ô][ô])[Ô]

E agora qual seria a melhor forma de eu fazer? Terei q mudar reestruturar o bd? Inclusive parte do código acima?

Vlw

JULIO92 19/01/2012 14:43:37
#393648
Sobre a frase: [Ô]Não instale o Windows 7 SP1 em máquinas de desenvolvimento.[Ô] tem algum problema, pois a semana passada comprei uma maquina nova com Windows 7 SP1 64 bits.

Pode dar algum problema?
MARCELO.TREZE 20/01/2012 11:07:51
#393727
bom pessoal, só pra esclacere quando a micorsoft lançou o seven sp1, ele veio sim com incopatibilidades binárias, porém alguns destes erros ja foram resolvidos, porém se for desenvolver um sistema usando ADO no seven ele só funcionará no seven, porém ja existem uma atualização da microsoft que corrige este problema.
JULIO92 20/01/2012 19:37:57
#393778
Então sobre a minha 2º duvida alguém tem alguma ideia como se faça?

Vlw....
MARCELO.TREZE 22/01/2012 19:00:07
#393821
colega qual o formato da dta no banco, já que está salvo como texto
JULIO92 22/01/2012 19:31:32
#393831
o formato é varchar
JULIO92 22/01/2012 19:33:56
#393832
Ops...formato dd/MM/yyyy o tipo q é varchar.

Vlw
Página 1 de 2 [13 registro(s)]
Tópico encerrado , respostas não são mais permitidas