> -
>
> Message: 1
> Date: Wed, 20 Feb 2008 17:33:48 -0300
> From: Euler Taveira de Oliveira <[EMAIL PROTECTED]>
> Subject: Re: [pgbr-geral] Utilizando initcap() com campos acentuados
> To: Comunidade PostgreSQL Brasileira
>         <[email protected]>
> Message-ID: <[EMAIL PROTECTED]>
> Content-Type: text/plain; charset=ISO-8859-1; format=flowed
>
> César wrote:
>
> > os campos que possuem acentos são simplesmente apagados, deixando uma
> > string vazia como resultado. Achei estranho isto, pois na maioria dos
> > casos que pesquisei, o que ocorria era passar a maiúscula o caracter
> > posterios a letra acentuada. Mas no meu caso não, o campo foi
> > simplesmente apagado.
> >
> Isso parece-me algum problema com sua codificação de caracteres. Sugiro
> que verifique se o seu meio de entrada (aka terminal ou qualquer outro
> aplicativo) está com a mesma codificação de caracteres emitida pelo
> client_encoding.
>
>
> template1=# show client_encoding;
>   client_encoding
> -----------------
>   UTF8
> (1 registro)
>
> template1=# \l
>      Lista dos bancos de dados
>     Nome    | Dono  | Codificação
> -----------+-------+-------------
>   postgres  | euler | UTF8
>   template0 | euler | UTF8
>   template1 | euler | UTF8
> (3 registros)
>
> template1=# create table foo (a int, b varchar(10));
> CREATE TABLE
> template1=# insert into foo values(1, 'ícaro'), (2, 'ábaco');
> INSERT 0 2
> template1=# select b,initcap(b) from foo;
>     b   | initcap
> -------+---------
>   ícaro | Ícaro
>   ábaco | Ábaco
> (2 registros)
>
>
> --
>    Euler Taveira de Oliveira
>    http://www.timbira.com/
>
> Caro Euler, o procedimento acima retornou:

museu=# show client_encoding;
 client_encoding
-----------------
 UTF8
(1 row)

museu=# \l
         List of databases
     Name     |  Owner   | Encoding
--------------+----------+----------
 museu    | root      | UTF8
 postgres     | postgres | LATIN1
 template0    | postgres | LATIN1
 template1    | postgres | LATIN1
 teste        | postgres | LATIN1
(5 rows)

museu=# create table foo (a int, b varchar(10));
CREATE TABLE
museu=# insert into foo values(1, 'ícaro'), (2, 'ábaco');
INSERT 0 2
museu=# select b,initcap(b) from foo;
   b   | initcap
-------+---------
 ícaro | íCaro
 ábaco | áBaco
(2 rows)

Grato

César
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a