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

Responder a