problema na consulta SQL

Delphi

24/04/2005

ae galera seguinte... ta ocorrendo um erro estranho ... eu to tentando fazer uma consulta entre datas.. digamos q eu tenha estas datas:
30/03/2005
1/04/2005
2/04/2005

e tenho 2 edits -> editinicial (onde coloca a data inciial) e editfinal < data final

eu coloco por exemplo 01/01/2005 e no edit final 01/12/2005 ele num retorna nenhum resultado e se eu coloco 29/03/2005 e 15/04/2005 ele num retorna o 1/04/2005 .. alguem sabe pq acontece issu????

with frmhome.ADOQuery3 do
  begin
    Close;
    SQL.Clear;
    SQl.Add(´Select * from arquivo´);
    SQl.Add(´where data between :data_inicial and :data_final´);
    Parameters.ParamByName(´data_inicial´).Value:=StrToDate(editdatainicial.Text);
    Parameters.ParamByName(´data_final´).Value:=StrToDate(editdatafinal.Text);
    Open;
  end;


Access / ADO


obrigado


Slack

Slack

Curtidas 0

Respostas

Otto

Otto

24/04/2005

e ai feio, blz?

olha so, pq ao inves de usar parametros vc nao passa logo tudo no add?

assim ó:


with frmhome.ADOQuery3 do 
  begin 
    Close; 
    SQL.Clear; 
    SQl.Add(´Select * from arquivo´); 
    SQl.Add(´where data >= ´+QuotedStr(FormatDateTime(´yyyy-MM-dd´,StrToDate(editdatainicial.Text); ));
    SQl.Add(´and data <= ´+QuotedStr(FormatDateTime(´yyyy-MM-dd´,StrToDate(editdataFinal.Text); ));
    Open; 
end;



tenta assim e ve se rola :wink:


GOSTEI 0
Robsons

Robsons

24/04/2005

Vale lembrar que no access é preciso passar as datas entre #


ex: 01/30/05

A dica do nosso amigo Otto é muito boa, tente trabalhar desta maneira
vai economizar muito tempo...

[]s


GOSTEI 0
POSTAR