Se for para remover a acentuação das palavras, tente a função que está
logo baixo, más é provável que não funcione em outros idiomas.

CREATE OR REPLACE FUNCTION f003sem_acento (TEXT) RETURNS TEXT AS $$
    select 
translate($1,'áàâãäéèêëíìïóòôõöúùûüÁÀÂÃÄÉÈÊËÍÌÏÓÒÔÕÖÚÙÛÜçÇ','aaaaaeeeeiiiooooouuuuAAAAAEEEEIIIOOOOOUUUUcC');
$$ LANGUAGE SQL
IMMUTABLE
RETURNS NULL ON NULL INPUT;

COMMENT ON FUNCTION f003sem_acento (TEXT) IS 'Remove acentuação';



2006/7/24, Fabio Telles <[EMAIL PROTECTED]>:
> Eu estou realmente estranhando algumas coisas. Eu também sempre li que
> seria melhor utilizar UTF-8 em tudo quanto é literatura por aí.
> Inclusive já vi gente argumentando que uma deficiencia do Oracle era
> na forma de tratar caracteres UTF-8. Um vez fui até criticado numa
> palestra de PostgreSQL por não recomendar explicitamente o uso do
> UTF-8.
>
> Eu utilizo UTF-8 por aqui há algum tempo sem problemas. No entanto,
> estou falando do lado server da base. No "client enconding" costumo
> utilizar o LATIN1 mesmo, pois os clientes window$ têm sérios problemas
> para entender UTF-8 corretamente, quem sabe no Vista eles acertam.....
>
> []s
>
> On 7/21/06, Otacilio Neto <[EMAIL PROTECTED]> wrote:
> > Eu sugiro utilizar LATIN1.
> > --- Nabucodonosor Coutinho <[EMAIL PROTECTED]>
> > escreveu:
> >
> > > Em 20/07/06, Osvaldo Rosario
> > > Kussama<[EMAIL PROTECTED]> escreveu:
> > > > * Desculpem pelo cross-posting *
> > > >
> > > > Para os que estão utilizando o encoding UTF8:
> > > > Qual a solução que vocês estão usando para o
> > > problema do to_ascii?
> > > >
> > > > bdteste=# \set
> > > > VERSION = 'PostgreSQL 8.1.4 on
> > > i386-redhat-linux-gnu, compiled by GCC
> > > > i386-redhat-linux-gcc (GCC) 4.1.0 20060304 (Red
> > > Hat 4.1.0-3)'
> > > > ....
> > > > ENCODING = 'UTF8'
> > > > ......
> > > >
> > > > bdteste=# select to_ascii('ê');
> > > > ERRO:  conversão de condificação de UTF8 para
> > > ASCII não é suportada
> > > >
> > > >
> > > > Na documentação:
> > > >
> > >
> > http://www.postgresql.org/docs/8.1/interactive/functions-string.html#FTN.AEN7612
> > > >
> > > > consta a seguinte nota na tabela 9-6 (Other String
> > > Functions):
> > > > "The to_ascii function supports conversion from
> > > LATIN1, LATIN2,
> > > > LATIN9, and WIN1250 encodings only. "
> > > >
> > > > Aí tentei forçar o encoding, mas o resultado foi,
> > > no mínimo, inesperado:
> > > >
> > > > bdteste=# select to_ascii('ê','LATIN1');
> > > >  to_ascii
> > > > ----------
> > > >  Aa
> > > > (1 registro)
> > > >
> > > >
> > > > Tentei converter o encoding, e até consegui, mas
> > > dando uma tremenda volta:
> > > >
> > > > bdteste=# SELECT convert('ê', 'UTF8', 'LATIN1');
> > > >  convert
> > > > ---------
> > > >
> > > > (1 registro)
> > > >
> > > > bdteste=# SELECT to_ascii(convert('ê', 'UTF8',
> > > 'LATIN1'));
> > > > ERRO:  conversão de condificação de UTF8 para
> > > ASCII não é suportada
> > > >
> > > > bdteste=# SELECT to_ascii(convert('ê', 'UTF8',
> > > 'LATIN1'), 'LATIN1');
> > > >  to_ascii
> > > > ----------
> > > >  e
> > > > (1 registro)
> > > >
> > > > Alguém tem uma solução melhor / mais prática?
> > >
> > >
> > > EU já postei lah :)
> > >
> > > to_ascii nao foi feita pra usar com URF-8, só com
> > > encodings latin.
> > >
> > > agora é como o Hjort falou, você precisa mesmo usar
> > > UTF-8? qual é o
> > > motivo? Você vai ter caracteres estranhos como os de
> > > alfabetos
> > > orientais?
> > >
> > > >
> > > > []s
> > > > Osvaldo
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > >
> > _______________________________________________________
> > > > Novidade no Yahoo! Mail: receba alertas de novas
> > > mensagens no seu celular. Registre seu aparelho
> > > agora!
> > > > http://br.mobile.yahoo.com/mailalertas/
> > > >
> > > >
> > > > _______________________________________________
> > > > Grupo de Usuários do PostgreSQL no Brasil
> > > > Antes de perguntar consulte o manual
> > > > http://pgdocptbr.sourceforge.net/
> > > >
> > > > Para editar suas opções ou sair da lista acesse a
> > > página da lista em:
> > > >
> > >
> > http://pgfoundry.org/mailman/listinfo/brasil-usuarios
> > > >
> > >
> > >
> > > --
> > > Nabucodonosor Coutinho
> > > Database Administrator
> > > PostgreSQL Brasil - www.postgresql.org.br
> > > Accu Hosting - www.accuhosting.com
> > > _______________________________________________
> > > Grupo de Usuários do PostgreSQL no Brasil
> > > Antes de perguntar consulte o manual
> > > http://pgdocptbr.sourceforge.net/
> > >
> > > Para editar suas opções ou sair da lista acesse a
> > > página da lista em:
> > >
> > http://pgfoundry.org/mailman/listinfo/brasil-usuarios
> > >
> >
> >
> >
> >
> >
> >
> > _______________________________________________________
> > O Yahoo! está de cara nova. Venha conferir!
> > http://br.yahoo.com/preview
> >
> > _______________________________________________
> > Grupo de Usuários do PostgreSQL no Brasil
> > Antes de perguntar consulte o manual
> > http://pgdocptbr.sourceforge.net/
> >
> > Para editar suas opções ou sair da lista acesse a página da lista em:
> > http://pgfoundry.org/mailman/listinfo/brasil-usuarios
> >
> _______________________________________________
> Grupo de Usuários do PostgreSQL no Brasil
> Antes de perguntar consulte o manual
> http://pgdocptbr.sourceforge.net/
>
> Para editar suas opções ou sair da lista acesse a página da lista em:
> http://pgfoundry.org/mailman/listinfo/brasil-usuarios
>


-- 
Mauro Matos
_______________________________________________
Grupo de Usuários do PostgreSQL no Brasil
Antes de perguntar consulte o manual
http://pgdocptbr.sourceforge.net/

Para editar suas opções ou sair da lista acesse a página da lista em:
http://pgfoundry.org/mailman/listinfo/brasil-usuarios

Responder a