Dúvida em busca Avançada
Bom dia amigos....
Eu consigo fazer uma busca por qualquer palavra de um texto???
Ex:
o texto estará num editbox : Onça comendo um macaco
Se eu procurar por (onça, comendo, macaco) o programa me acha o mesmo registro!
obs : utilizando paradox e table!!
Desde já, agradeço a atenção!!
Eu consigo fazer uma busca por qualquer palavra de um texto???
Ex:
o texto estará num editbox : Onça comendo um macaco
Se eu procurar por (onça, comendo, macaco) o programa me acha o mesmo registro!
obs : utilizando paradox e table!!
Desde já, agradeço a atenção!!
Renato Battaglia
Curtidas 0
Respostas
Lucas Silva
04/02/2004
Tenta separar as palavas com a função [b:62ecb843b4]Pos[/b:62ecb843b4];
E depois você faz uma pesquisa com cada palavra.
pos(´ ´,edit1.text) // vc procura o espaço em branco dentro da string;
E depois você faz uma pesquisa com cada palavra.
GOSTEI 0
Renato Battaglia
04/02/2004
Meu código de pesquisa é este abaixo!! como eu encaixaria o código que vc me passou no meu, para que o programa me encontre qualquer uma das palavras do texto digitado????
procedure TFormPesquisa.BitBtnPesquisaClick(Sender: TObject);
var
Bichos: String;
begin
Bichos := Edit1.Text;
TableTimeCode.FindKey([Bichos]);
TableTimeCode.CancelRange;
TableTimeCode.IndexName := ´IBichos´;
TableTimeCode.SetRange([IBichos],[IBichos]);
if TableTimeCode.Eof then
begin
TableTimeCode.CancelRange;
ShowMessage(´Nenhum bicho com este nome!´);
end
else
begin
Height := 375;
Top := 110;
DBGridPesquisa.SetFocus;
end;
end;
procedure TFormPesquisa.BitBtnPesquisaClick(Sender: TObject);
var
Bichos: String;
begin
Bichos := Edit1.Text;
TableTimeCode.FindKey([Bichos]);
TableTimeCode.CancelRange;
TableTimeCode.IndexName := ´IBichos´;
TableTimeCode.SetRange([IBichos],[IBichos]);
if TableTimeCode.Eof then
begin
TableTimeCode.CancelRange;
ShowMessage(´Nenhum bicho com este nome!´);
end
else
begin
Height := 375;
Top := 110;
DBGridPesquisa.SetFocus;
end;
end;
GOSTEI 0
Aroldo Zanela
04/02/2004
Colega,
Utilize um componente TQuery ao invés de TTable e faça algo como:
Utilize um componente TQuery ao invés de TTable e faça algo como:
With Query1 do Close; SQL.Text := Concat(´Select * from TABELA where coluna_descr like ¬´, Edit1.Text, ´¬´); Open; if RecordCount<=0 then ShowMessage(´Não encontrado´); end;
GOSTEI 0
Renato Battaglia
04/02/2004
Caro Haroldo,
O problema é que eu não faço a mínima ideia de como usar uma Query.... Meu programa já está quase pronto em Table, para eu usar Query, eu tenho que mudar toda a estrutura dele??
Eu já tentei uma vez usar, só que dava um erro de SQL!!
Eu sou novato, se alguém tiver alguma apostila, ou coisa parecida para me ajudar como eu trocar Table por Query, ficarei eternamente agradecido!!!
Mais uma vez agradeço a atenção!
O problema é que eu não faço a mínima ideia de como usar uma Query.... Meu programa já está quase pronto em Table, para eu usar Query, eu tenho que mudar toda a estrutura dele??
Eu já tentei uma vez usar, só que dava um erro de SQL!!
Eu sou novato, se alguém tiver alguma apostila, ou coisa parecida para me ajudar como eu trocar Table por Query, ficarei eternamente agradecido!!!
Mais uma vez agradeço a atenção!
GOSTEI 0