Fórum consulta SQL - duvida #222773
27/03/2004
0
usando query...
exemplo gostaria que me retornasse todos so campos da tabela 1
cujo.. preco maior que 100 e data menor o que estiver digitado no campo dbedit3(data - 25/03/04)
e gostaria de saber aonde esa query vai me retornar...???
alguem poderia me dar uma ajuda ae??
obrigado
Davefloripa
Curtir tópico
+ 0Posts
27/03/2004
Spider
na propriedade DataSet do DataSource selecione a Query e na propriedade DataSource do DBGrid selecione o DataSource.
na propriedade SQL da Query coloque:
select * from tabela1 where preco>100 and data <:pdata
na propriedade params mude o DataType do pdata para ftDate
num botao de pesquisa ou outro, coloque:
//o dbedit deve estar preenchido corretamente
query1.parambyname(´pdata´).AsDate:=StrToDate(dbedit3.text);
query1.open;
Gostei + 0
27/03/2004
Vinicius2k
Acredito que melhor instrução SQL para sua TQuery seria :
select * from NOME_DA_TABELA where (CAMPO_PRECO < :precominimo) and (CAMPO_DATA < :datalimite)
o click de um botão então faria :
Query1.Close;
Query1.ParamByName(´precominimo´).asFloat := 100;
Query1.ParamByName(´datalimite´).asDate := StrToDate(Edit3.Text);
Query1.Prepare;
Query1.Open;
note que nesta instrução eu criei parametros para tornar a Query flexível tanto da preco mínimo quanto na data... o valor fixado como 100 poderia ser o conteudo de um TEdit também, logicamente, convertido para Float (StrToFloat)... a criação dos parametros não é obrigatória mas facilita bastante o trabalho e evita erros de conversão...
o retorno da TQuery é nela mesma, digamos assim, basta vc ligar a ela um TDataSource e uma DBGrid no TDataSource e o resultado da sua consulta estará sendo exibida...
T+
Gostei + 0
27/03/2004
Fabio.hc
procedure TForm1.Button1Click(Sender: TObject); begin Query1.Close; Query1.SQL.Text:=´select * from venda where valor > 100 and ven_data < :data´; Query1.Params[0].Value:=StrToDate(Edit1.Text); Query1.Open; end;
Coloque um DBGrid para ver o resultado.
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)