Fórum duvida com filtragem #198054
30/11/2003
0
Tem um topico neste forum assim:
***************************************
Tenho uma tabela CLIENTES com vários nomes e quero fazer uma instrução SQL que retorne os clientes começados pelas letras digitadas em um EDIT. Por Exemplo, se eu digitar F, aparecer somente os clientes iniciados por F ex: FRANCISCO, FERNANDO, FABRICIO etc. Se eu digitar MARI, retorne somente os clientes iniciados por MARI ex: MARIA, MARIANA, MARINALVA etc.
Alguém pode me ajudar, por favor.
Registrado em: Quinta-Feira, 5 de Junho de 2003
--------------------------------------------------------------------------------
Resposta:
select * from tabcli where nomeDoCliente like ´Ricardo¬´
te retornará todos com Ricardo no começo do nome.
se vc quiser uma busca onde p.ex ard traga Ricardo, faça, ¬ard¬
sacou?
da uma olhada no like, ele é o comando a ser usado por ti
*******************************************
Dai´ eu pergunto:
Como fazer a mesma coisa sem usar SQL e sem usar o FilterRecord da Table. Pois o sistema fica muito lento mesmo sem filtro estar ativo (Accept := False).
Basta ter um: ´//´ no FilterRecord para o sistema ficar lento. Exemplo:
procedure DataModule1.ClientesFilterRecord(DataSet: TDataSet;var Accept: Boolean);
begin
//
end;
Diante mao ja´ agradeco alguma ajuda.
***************************************
Tenho uma tabela CLIENTES com vários nomes e quero fazer uma instrução SQL que retorne os clientes começados pelas letras digitadas em um EDIT. Por Exemplo, se eu digitar F, aparecer somente os clientes iniciados por F ex: FRANCISCO, FERNANDO, FABRICIO etc. Se eu digitar MARI, retorne somente os clientes iniciados por MARI ex: MARIA, MARIANA, MARINALVA etc.
Alguém pode me ajudar, por favor.
Registrado em: Quinta-Feira, 5 de Junho de 2003
--------------------------------------------------------------------------------
Resposta:
select * from tabcli where nomeDoCliente like ´Ricardo¬´
te retornará todos com Ricardo no começo do nome.
se vc quiser uma busca onde p.ex ard traga Ricardo, faça, ¬ard¬
sacou?
da uma olhada no like, ele é o comando a ser usado por ti
*******************************************
Dai´ eu pergunto:
Como fazer a mesma coisa sem usar SQL e sem usar o FilterRecord da Table. Pois o sistema fica muito lento mesmo sem filtro estar ativo (Accept := False).
Basta ter um: ´//´ no FilterRecord para o sistema ficar lento. Exemplo:
procedure DataModule1.ClientesFilterRecord(DataSet: TDataSet;var Accept: Boolean);
begin
//
end;
Diante mao ja´ agradeco alguma ajuda.
Adonis
Curtir tópico
+ 0
Responder
Posts
30/11/2003
Orc
so usar ese codigo aqui
procedure TFrmlocalizaBanco.Edit1Change(Sender: TObject);
begin
with Adoquerybancos do
begin
active:=false;
sql.clear;
sql.add(´Select * from bancos´);
sql.add(´Where desc_banco like ´ + ´´´´ + edit1.text + ´¬´ + ´´´´);
active:=true;
end;
end;
obs***dentro da query vc da um select na tablea que vai usar
procedure TFrmlocalizaBanco.Edit1Change(Sender: TObject);
begin
with Adoquerybancos do
begin
active:=false;
sql.clear;
sql.add(´Select * from bancos´);
sql.add(´Where desc_banco like ´ + ´´´´ + edit1.text + ´¬´ + ´´´´);
active:=true;
end;
end;
obs***dentro da query vc da um select na tablea que vai usar
Responder
Gostei + 0
01/12/2003
Adonis
Orc,
Eu nao queria usar SQL. Já fiz teste usando SQL. Na hora de montar, como o banco e´ relativamente grande e esta´ em rede o sistema fica lento esperando a filtragem. Tem alguma maneira sem usar SQL ?
Diante mao agradeco alguma ajuda.
Eu nao queria usar SQL. Já fiz teste usando SQL. Na hora de montar, como o banco e´ relativamente grande e esta´ em rede o sistema fica lento esperando a filtragem. Tem alguma maneira sem usar SQL ?
Diante mao agradeco alguma ajuda.
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)