Fórum Data #196310

20/11/2003

0

Tenho um campo data em minha tabela, uso paradox. No bd configurei o campo como D (date). No form tenho 2 botões com os quais faço a seguintes consultas sql:

1° Botão: Consultar datas menores que a do maskedit2

query1.close;
query1.sql.clear;
query1.sql.add (´select * from data where data <´+quotedstr(maskedit2.text)+´order by data´);
query1.open;

2° Botão: Consultar datas maiores que a do maskedit2

query1.close;
query1.sql.clear;
query1.sql.add (´select * from data where data >´+quotedstr(maskedit2.text)+´order by data´);
query1.open;

Quando a data é por exemplo:28/11/1970 e tenho ela gravada na tabela e aperto o 1º botão, para consultar datas menores que esta, recebo a msg:
TYPE MISMATCH IN EXPRESSION

Qual o meu erro ?
Alguém poderia me dar uma ajuda ??

E sem querer abusar, como seria com o componente table ??

Valeu galera, um abraço a todos !!


Seneca

Seneca

Responder

Posts

21/11/2003

Rafael_gamba

Seu erro é simples. Veja o que vc escreveu :

query1.sql.add (´select * from data where data <´+quotedstr(maskedit2.text)+´order by data´);

Você está comparando uma data com uma string.
Compare data com data ex:

query1.sql.add (´select * from data where data <´+StrToDate(maskedit2.text)+´order by data´);

faça isso nas duas instruções!!

Um abraço!!!


Responder

Gostei + 0

21/11/2003

Namerda

VOCE PRECISA APENAS COLOCAR A DATA ENTRE ASPAS :

query1.sql.add (´select * from data where data < ´´+quotedstr(maskedit2.text)+´´ order by data´);


AJUDOU ???


OBS... ACHO Q A DICA DO COLEGA ACIMA NAUM FUNCIONA...


Responder

Gostei + 0

21/11/2003

Denis200

caro colega com o componete table ficaria da seginte forma

tabela.filter:=´data <´+#39+maskedit2.text+39;

tente desta forma comigo funcionou.


Responder

Gostei + 0

21/11/2003

Seneca

Obrigado a todos que tentaram me ajudar, vou tentar todas as dicas !


Valeu.


Responder

Gostei + 0

21/11/2003

Vanius

Fera, tente isto.
Acho q fica mais apresentavel.

query1.sql.add (´select * from data where data < :Data order by data´);
query1.ParamByName(´Data´).Value := StrToDateTime(maskedit2.text);

[]s,


Vanius
vaniusg@terra.com.br


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar