-
Posts
2 -
Cadastrado em
-
Última visita
Tipo de conteúdo
Artigos
Selos
Fabricantes
Livros
Cursos
Análises
Fórum
posts postados por Leonardo Andrade
-
-
Opa, eai pessoal!
Tô tendo uns problemas com minha aplicação.
Não estou conseguindo aplicar SQL abaixo na query da minha aplicação delphi.
Quando rodo "SELECT * FROM BANCODEDADOS WHERE PROBLEMA LIKE '%casa%' AND PROBLEMA LIKE '%amarela%' " no SQL Server, o resultado é o esperado:
mostra todos resultados que contenham ambas as palavras, independente da ordem que as escrevo, ou seja:
TABELA: BANCODEDADOS
CAMPO: |PROBLEMA |
|casa amarela| VALORES
|amarela casa| VALORES
o problema é que não estou conseguindo fazer o mesmo no delphi ao digitar os valores em um edit (fedit_pesquisar)
Evento on change:
dm_egestor.adoquery_egestor.Close; dm_egestor.adoquery_egestor.SQL.Clear; dm_egestor.adoquery_egestor.SQL.Add('SELECT * FROM BANCODEDADOS WHERE PROBLEMA LIKE '+ QuotedStr('%'+fedit_pesquisar.Text+'%')+' AND PROBLEMA LIKE '+ QuotedStr('%'+fedit_pesquisar.Text+'%')+''); dm_egestor.adoquery_egestor.Open;
O resultado no meu dbgrid deveria ser todos os resultados que contenha as palavras digitadas pelo usuário no edit, independente da ordem.
Fiz utilizando o FILTER também (porém sem sucesso):
//if fedit_pesquisar.Text = '' then //dm_egestor.adoquery_egestor.Filtered := False //else begin //dm_egestor.adoquery_egestor.Filter := 'PROBLEMA LIKE ' + QuotedStr('*'+ fedit_pesquisar.Text +'*') + ' AND ' + 'PROBLEMA LIKE ' + QuotedStr('*'+ fedit_pesquisar.Text +'*'); //dm_egestor.adoquery_egestor.Filtered := True; //end;
Sobre o Clube do Hardware
No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais
Direitos autorais
Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais
Consulta delphi operador LIKE ou FILTER
em Programação - outros
Postado
Resolvido!!!
Pesquisa dinâmica em Delphi com 3 Edits, dbGrid, adotable e banco Acess, utilizando operador LIKE.
para quem interessar segue os códigos:
(a pesquisa é construída a medida que o usuário for preenchendo. Permite pesquisar em 1 ou N edits)