Pelo JPA tem como usar Query Native, quando precisar alguma função do
banco use ela...
Adriano
Leandro Müller escreveu:
Obrigado turma.
Deu certo aqui, porem devido toda a aplicação trabalhar com JPA (Java)
teremos que modificar os sistemas envolvidos para trabalhar direto com SQL
chamando a função.
Obrigado Osvaldo.
At.
Leandro Müller
Analista de Sistemas
-Mensagem original-
De: pgbr-geral-boun...@listas.postgresql.org.br
[mailto:pgbr-geral-boun...@listas.postgresql.org.br] Em nome de Osvaldo
Kussama
Enviada em: quarta-feira, 3 de junho de 2009 16:27
Para: Comunidade PostgreSQL Brasileira
Assunto: Re: [pgbr-geral] problema com acentos no UTF8
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,'áàâãäéèêëíìïóòôõöúùûüÁÀÂÃÄÉÈÊËÍÌÏÓÒÔÕÖÚÙÛÜçÇ',
'aiiioAIIIOcC');
$$
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
___
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
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral