[firebase-br] Problema com Acentos, de novo!!!

Fábio Bot .·. fabiobot em yahoo.com.br
Qui Jul 21 10:31:49 -03 2005


Olá,

Criei uma solução que embora não seja ideal do ponto de vista de espaço 
resolveu muito bem o problema,
por exemplo, a tabela de GRUPOS:

CODIGO  INTEGER (PK)
NOME      VARCHAR(20)
NOMEBUSCA  VARCHAR(20)

No evento beforepost da tela de cadastro de grupos coloca  NOMEBUSCA = 
RemoveAcentos(NOME)
Onde RemoveAcentos é uma função em Delphi que substitui qualquer caracter 
acentuado pelo correspondente não acentuado.

Na tela de busca, removo os acentos do parâmetro informado e monto o select 
para buscar somente no conteúdo do campo NOMEBUSCA.
Isto foi criado a muito tempo e funciona muito bem embora, como já disse, 
talvez não seja a solução ideal.

Tríplice abraço,

Fábio Bot.


".:. Enio Marconcini .:. 1010011010 .:." 
<eniorm em gmail.com> escreveu na mensagem 
news:354e237b05072106134f95a2f7 em mail.gmail.com...
Pessoal, montei um esquema para pesquisar por nomes acentuados e sem acento
e funcionou, veja:
 nome a ser pesquisado: 'ANTÔNIO';
 nomesem_acento := RemoveAcento(nome);
// então aqui fica 'ANTONIO'
 Na hora do select
 SELECT ... WHERE NOME LIKE nome OR NOME LIKE nomesem_acento
 ---
Funcionou blza, o problema é que, caso no banco eu tenha um nome com acento,
tipo:
ANTÔNIO
e a pesquisa seja 'ANTONIO'
daí eu não consigo recuperar os registros.
 Estou usando charset WIN1252 collate INTL850.
 Tem como resolver esse problema? Atravez de UDFs ou sei la oq???
 Abraços,

-- 
ENIO RODRIGO MARCONCINI
.:. msnm: eniorm em gmail.com .:.
http://spaces.msn.com/members/eniomestresith/
°[º]°°[º]°°[º]°°[º]°°[º]°°[º]°°[º]°°[º]°°[º]°°[º]°°[º]°°[º]°°[º]°°[º]°
a long time ago in a galaxy far, far away...
______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
Para editar sua configuração na lista, use o endereço 
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas: http://firebase.com.br/pesquisa







Mais detalhes sobre a lista de discussão lista