latin1 não é uma codificação muito boa... O Osvaldo postou isso no passado (tem várias threads sobre isso, peguei uma mais recente e com mais links).
Copiando o que o Osvaldo escreveu: -------------------------------------------------------------------- (...) O histórico tem diversas threads sobre isso. Creio que você deva ler este post do Roberto Mello: http://blog.divisiblebyfour.org/search/label/encoding (bem como o artigo do Joel Spolsky que ele cita). Estas threads (dentre outras) falam sobre isso: http://www.nabble.com/encoding-to9394266.html#a9400650 http://www.nabble.com/Qual-o-melhor-Encode-para-o-Brasil--td15857951.html#a15857951 http://www.nabble.com/Ainda-sobre-Latin1-no-8.3-td15913717.html#a15923070 (...) ---------------------------------------------------------------- <http://www.nabble.com/Ainda-sobre-Latin1-no-8.3-td15913717.html#a15923070> []'s Luigi Castro Cardeles 2009/6/3 Nilson Chagas <nilson.chagas.si...@gmail.com> > 2009/6/3 Osvaldo Kussama <osvaldo.kuss...@gmail.com> > > 2009/6/3 Leandro Müller <leandr...@muriki.com.br>: >> > >> > Sou novo nesta lista, nesses últimos meses estou migrando uma base de >> dados >> > de 4gb para postgresql 8.3.7, utilizávamos mysql na empresa, mas ficou >> muito >> > lento devido a complexidade de relatórios e diversos recursos que >> precisamos >> > agora. >> >> Seja bem vindo! >> >> >> > >> > Bom o único problema que tivemos com o banco de dados é quanto a >> pesquisa >> > com ilike em palavras com acentos. >> > >> > Exemplo: >> > >> > Select nome from cliente where nome ilike ‘joao%’; >> > >> > O João não lista, fiz testes com a versão 8.4 e o mesmo ocorre, esse >> banco >> > esta na codificação UTF8 >> >> Sim João é diferente de Joao e também diferente de joão, JOÃO e joao. >> >> >> > >> > Tentei criar um banco como latin1 porem o post não aceita criar. >> >> Você não pode mudar mas ele aceita criar (vide initdb) mas tem que ser >> compatível com o locale de seu S.O. >> >> >> > >> > Alguém tem idéia de que tipo configuração devo fazer para fazer >> pesquisas >> > com acento? >> > >> >> Quando o encoding é LATIN1, LATIN2, LATIN9 ou WIN1250 podemos usar a >> função to_ascii: >> http://www.postgresql.org/docs/current/interactive/functions-string.html >> >> Quando se utiliza o UTF8 o pessoal tem utilizado uma função de >> conversão como esta: >> >> CREATE FUNCTION sem_acento(text) RETURNS text AS $$ >> SELECT translate($1,'áàâãäéèêëíìïóòôõöúùûüÁÀÂÃÄÉÈÊËÍÌÏÓÒÔÕÖÚÙÛÜçÇ', >> 'aaaaaeeeeiiiooooouuuuAAAAAEEEEIIIOOOOOUUUUcC'); >> $$ >> LANGUAGE sql IMMUTABLE STRICT; >> >> Ficaria assim: >> SELECT nome FROM cliente WHERE sem_acento(nome) ilike sem_acento(‘joao%’); >> >> Caso faça uso intensivo desta query considere a criação de um índice >> funcional para melhorar a performance. >> >> Osvaldo > > > O Hostmaster, criou o banco do site que estou trabalhando com Latin1 > (versão 8.2.7). > E lá utilizo o indice e pesquisa como lower(to_ascii(campo)) e consigo > pesquisar de tudo que é jeito. > > A algum problema com o metodo utilizado??? > -- > []s > Nilson Chagas - Ubuntu User 25794 > --- > Visite: > http://www.amados.com.br/podcast -> Peça gratuitamente um curso Bíblico > http://tempodesalvacao.blogspot.com/ > http://bbnradio.org/ -> Ouça a rádio e faça gratuitamente um Curso Biblico > > > > _______________________________________________ > pgbr-geral mailing list > pgbr-geral@listas.postgresql.org.br > https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral > >
_______________________________________________ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral