PESQUISAS_C/ OU S/ ? ^ ~ ''

ESTGL1439 14/05/2014 05:43:01
#438165
Bom dia,

eu tenho o seguinte, a minha pesquisa que segue em anexo o código em vb.6, ele reconhece os acentos e os Ç ~ ^ e eu queria que na pesquisa aparecesse todos os nomes, por exemplo:
-se eu tiver registado um cliente c/ o nome João, eu na pesquisa tenho que por João, porque se colocar joao já nao aparece,
-ou por exemplo, Luís, se eu procurar assim: Luìs ele já não aparece e eu queria que desse para procurar tudo
por exemplo
registo como João Luís e na pesquisa mesmo que eu escrevesse Joao Luìs ele me encontrasse.

Isto é Possível?
MARCELOSN 14/05/2014 08:39:47
#438170
Bom dia


Segue uma dica caso utilize o SQL como banco de dados:
Pesquisa fonética com Soundex

Recuperar informações armazenadas em uma fonte de dados não é tão simples quanto parece. Dependendo do ambiente esta tarefa pode ser uma tarefa crítica que deve ser tratada com todo o cuidado. Quanto tratamos com informações que estão armazenadas no formato de strings e que não possuem uma chave numérica para facilitar a busca podemos estar diante de uma tarefa complexa.

O armazenamento de nome e sobrenome em base de dados relacionais pode estar sujeito a uma imprecisão que pode prejudicar recuperação das informações. Vou mostrar um exemplo do que estou querendo dizer usando o SQL Server

A informação Sobrenome possui valores que se assemelham quanto a pronúncia ( Brown , Braun , Broon, Braum, etc.) portanto não seria tão simples recuperar a informação baseada nos valores desta coluna.

Felizmente o SQL Server possui uma função que nos ajuda a resolver o problema. A função SOUNDEX.

SOUNDEX(a) retorna um código SOUNDEX de quatro caracteres para determinar a semelhança entre duas strings.


fonte: http://www.macoratti.net/sql_sdex.htm
ESTGL1439 14/05/2014 09:50:07
#438176
e Access.
OCELOT 14/05/2014 09:58:15
#438177
SOUNDEX é meio que voltado para o inglês, não sei se funcionaria muito bem em português, e a forma de se fazer essa busca varia de acordo com o banco de dados usado, por exemplo no SQL Server ficaria da seguinte forma, supondo que eu tenha uma tabela chamada Table1 e nela um campo chamado Nome

SELECT * FROM dbo.Table1 WHERE Nome COLLATE Latin1_General_CI_AI LIKE [ô]%jose%[ô] COLLATE Latin1_General_CI_AI

Assim ele retornaria todos os registros com a palavra jose no campo nome, independente dos acentos.
ESTGL1439 14/05/2014 10:09:18
#438178
mas o problema é que utilizo Access e não Sql....
será possível?
GUIMORAES 14/05/2014 10:14:48
#438179
utilize o Like em suas consultas, ela funciona no access.
ESTGL1439 14/05/2014 10:27:16
#438182
Select Case TipoC
Case 1: strW = strC & [Ô] LIKE [ô][Ô] & Trim(txtFind) & [Ô]%[ô][Ô] [ô]começa por
Case 2: strW = strC & [Ô] LIKE [ô]%[Ô] & Trim(txtFind) & [Ô]%[ô][Ô] [ô]contém
Case 3: strW = strC & [Ô] = [ô][Ô] & Trim(txtFind) & [Ô][ô][Ô] [ô]igual a
Case 4: strW = [Ô]1=1[Ô] [ô]todos
Case 5: strW = strC & [Ô] LIKE [ô][Ô] & Trim(Abrev) & [Ô]%[ô][Ô] & [Ô] AND [ô]%[Ô] & Trim(texto) & [Ô][ô][Ô] [ô]1º e último
End Select

Mas eu utilizo assim e não dá :(
OMAR2011 14/05/2014 12:17:24
#438185
Este é um exemplo de consulta simples.
Descricao like [ô][Ô] & Text1.Text & [Ô]%[ô][Ô] [ô]
OCELOT 14/05/2014 13:37:57
#438187
O like funciona para o que você quer no access, porém você vai ter que modificar o que a pessoa digitou, por exemplo se o cara digitou [ô]jose[ô] ou qualquer variação dele com acento, você deve usar na busca por exemplo o texto [ô]j[oõôóòö]s[eéèêë][ô]

Isso é porque no like quando se tem [ ] significa qualquer um dos caracteres que está dentro das [ ], porém isso só funciona com o like
Faça seu login para responder