GARANTIR DESCONTO

Fórum Consulta em modo rapido #257979

11/11/2004

0

para fazer consultas de modo rápido, digamos tenho um edit e um dbgrid
tenho uma tabela clientes vinculado com dbgrip aí quando vou digitando no edit o nome de um dos clientes M -> no grid já mostra todos q começam com M, depois A, todos q começam com MA depois MAR todos q começam com MAR, como faço, da pra eu fazer assim
select * from cliente where Nome like ´´+Edit1.text+´¬´?
se for assim onde coloco esse código?


Luiz_aquino

Luiz_aquino

Responder

Posts

11/11/2004

Bruno Belchior

coloque o evento OnChange do Edit (esse evento é disparado toda vez que ocorre uma alteração ´Change´ na propriedade Text do Edit)
  with Query1 do
  begin
     Close;
     SQL.Text := ´select * from cliente where Nome like :ParNome´;
     ParByName(´ParNome´).AsString := Edit1.Text+´¬´;
     Open;
   end; 

mas aviso que isso pode te custar muita banda em rede (caso esteja usando) é melhor filtrar cada vez que o usuário teclar enter, ou seja quando ele digitar um nome e depois enter o programa traz todos os resultados possíveis... espero ter ajudado


Responder

Gostei + 0

11/11/2004

Toninhonunes

para fazer consultas de modo rápido, digamos tenho select * from cliente where Nome like ´´+Edit1.text+´¬´? se for assim onde coloco esse código?


Isso é bonito, no entanto não recomendado para ambiente de rede, ainda mais se for trabalhar de forma remota, faça consulta com apenas uma restrição por vez, ficar disparando eventos no banco de dados, causa lentidão e se for utilizar em muitos terminais a performance vai cair muito.

No entanto, se for utilizar apenas em uma ou duas máquinas os efeitos colaterais não são tão percebidos.

T+


Responder

Gostei + 0

11/11/2004

Osocram

Recomendo q utilize ClientDataSet pois ele guarda os dados em memoria.. e enton usar o Filter dele ou mesmo um locate p achar os dados... mto mais rapido. (principalmente em ambiente multiusuario ou ond use rede)


Responder

Gostei + 0

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

Aceitar