Fórum Ajuda em comparar Data no Firebird #328254
30/08/2006
0
Estou usando a consulta assim:
...
Sql.Append(´Where ´+seta+´ Like´+QuotedStr(aux+´¬´)+´ORDER BY OS´);
...
´Seta´ é o nome do campo,aux é uma string de algum Edit.
Grava o dia corrente assim:
...
Append(QuotedStr(FormatDateTime(´mm/dd/yyyy´,Date))+´,´ );
...
Eu preciso fazer uma consulta onde se digita algo em um MaskEdit formatado para aceitar uma data (29/08/2006) para comparar a uma data exata ou próxima em campo Date,ou usando a consulta da sql acima ou montando outra.
Não consegui resultados...
Kroki
Curtir tópico
+ 0Posts
30/08/2006
Ronaldo.cutu
ex:
mm/dd/yyyy, assim deve ficar seu aux
outra coisa
se seu campo no banco estiver data e hora transformar para data
ex:
CAST(campo AS DATE)
para procurar data ou intervalos use
´where cast(seta as date) between ´´´+data_inicio+´´´ and ´´´+:data_fim....
caso vc queira usar somente um campo para usuario informar a data
e queira 1 dia anterior e 1 dia posterior a data
´where cast(seta as date) between ´´´+data_inicio+´´´+1 and ´´´+:data_fim+´´´+1´
att
Ronaldo
Gostei + 0
31/08/2006
Kroki
Criei uma variavel TDateTime(auxdata).
...
auxdata:=StrToDate(maskedit1.Text);
aux:=FormatDateTime(´yyyy-mm-dd´,auxdata);
...
Só consigo resultado se a string ´aux´ for formatada como acima (?).
Descobrí que o banco esta guardando dessa maneira(2006-08-29).
Porque isso?
Gostei + 0
31/08/2006
Ronaldo.cutu
quando vc vai comparar data atraves de SQL, vc tem que passar a data
formatada no padrão do banco porque se não ele vai pegar data errado
ou te acusar um erro
eu utilizo comparação de data via delphi e Firebird desta forma e nunca
tive problemas
att
Ronaldo
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)