Use: select nick from tabela where upper(to_ascii(nick)) like upper(to_ascii'%termodepesquisa%'));
TO_ASCII retira os acentos, use nessa ordem: upper(to_ascii para evitar problemas com caracteres_acentuados + caixa_alta. Se precisa de uma tabela rápida, crie um campo (nick_ascii) com uma trigger gravando nick_ascii = upper(to_ascii(nick)) Jorge Vilela 2010/3/11 Adriano Ribeiro <[email protected]> > Olá a todos. > > Estamos com o famoso problema de acentuação em nosso PGSQL 8.4. > Vejam: > > select nick from tabela; > ------ > "OE" > "Nívea" > "Nágila" > "Nilton" > "Nuno" > > > select nick from tabela order by nick; > ------ > "Nilton" > "Nuno" > "Nágila" > "Nívea" > "OE" > > Neste exemplo Nágila deveria vir ANTES de Nilton... porém por ter acento o > pg faz isso... > > Outro problema é o uso do LIKE. > select nick from tabela where nick like '%nagila%'; > ------ > no records > > ele não retorna o registro "Nágila". > > > Nosso aplicativo é desenvolvido com WebObjects (Java) e as queries são > montadas por ele (como um Hibernate faria). > Portanto *não* é interessante para nós mudarmos as queries "nã mão" pois o > WO as monta muito bem. > A questão apenas é esta de acentuação no PGSQL. > Com outros bancos não temos este problema (um MS SQL Server por exemplo). > > O mesmo acontece usando um PGAdmin3, pois usamos as queries da forma mais > natural possível (denovo: sem funções ou iLike). > > Existe alguma forma de se arrumar isso? > > Haverá correção no PG 9? Alguém sabe? > > > Abraço a todos, > > *Adriano Ribeiro* > [email protected] > http://www.play3g.com.br > > > > > _______________________________________________ > pgbr-geral mailing list > [email protected] > https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral > >
_______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
