query

Delphi

26/05/2003

estou com um banco de dados em access na qual utilizo uma conexao ado .
estou tendo poblemas em estar filtrando um dados que possuen duas datas, uma inicial e uma final. queria que aparecesse somente entre as datas que eu especificar.
tentei utilizar parametros mas tem me dado problema, fiz assim
adoquery.close;
adoquery.sql.clear;
adoquery.sql.add(´select * from tbkilometragem where datainicial >=:inicio and datafinal <=:final´)
adoquery.prepared;
adoquery.open

quando mando executar clicando co botao da pau me envia um mensagem de erro

me ajudem...

neomid :roll:


Neomid

Neomid

Curtidas 0

Respostas

Neomid

Neomid

26/05/2003

esqueci eu tb coloquei
adoquery.parameters.parambyname(´pinicial´).value:= maskedit1.text;
adoquery.parameters.parambyname(´pfinal´).value:= maskedit2.text;


GOSTEI 0
Neomid

Neomid

26/05/2003

po quebra essa


GOSTEI 0
Pardal3000

Pardal3000

26/05/2003

Olá amigo,

Faça como sua primeira tentativa (sql), mas coloque o sinal ´#´ entre a data (ex: 01/01/2003) e inverta o dia pelo mês (12/30/2003). Isso irá funcionar. Caso não saiba inverter a data pelo mês, dê uma procurada na função DecodeDate, do próprio Delphi. Utilizo Delphi 5... no Delphi 6 tem uma função melhor, mas não lembro qual é...

Espero ter ajudado,

[]´s

Pardal3000


GOSTEI 0
POSTAR