Evandro Ricardo Silvestre wrote:

> Não temos um grande conhecimento de Linux. Gostaria de saber se alguém 
> aqui na lista já passou por isso e/ou se tem alguma idéia do que pode 
> ser e de como resolver.
> 
Só para esclarecer o assunto... Codificação de caracteres do cliente e 
do servidor podem ser diferentes. Se a codificação do cliente é 
diferente da codificação do servidor, o servidor PostgreSQL tenta fazer 
uma conversão antes de armazenar/retornar os dados. Um problema que 
existia é que a aplicação cliente (no caso abaixo o psql) não avisava se 
a codificação informada ao servidor (client_encoding) era a mesma do 
ambiente (terminal).


Bem vindo ao psql 8.3.0, o terminal iterativo do PostgreSQL.

Digite:  \copyright para mostrar termos de distribuição
          \h para ajuda com comandos SQL
          \? para ajuda com comandos do psql
          \g ou terminar com ponto-e-vírgula para executar a consulta
          \q para sair

template1=# show client_encoding;
  client_encoding
-----------------
  LATIN1
(1 registro)

Tempo: 96,889 ms
template1=# show server_encoding;
  server_encoding
-----------------
  LATIN1
(1 registro)

Tempo: 0,201 ms
template1=# select upper('áéíóú');
  upper
-------
  ÁÉÍÓÚ
(1 registro)

Tempo: 195,296 ms
template1=# set client_encoding to 'utf-8';
SET
Tempo: 87,177 ms
template1=# show client_encoding;
  client_encoding
-----------------
  utf-8
(1 registro)

Tempo: 0,206 ms
template1=# select upper('áéíóú');
ERRO:  sequência de bytes é inválida para codificação "UTF8": 0xe1e9ed
DICA:  Este erro pode acontecer também se a sequência de bytes não 
corresponde a codificação esperado pelo servidor, que é controlada por 
"client_encoding".
ERRO:  sequência de bytes é inválida para codificação "UTF8": 0xe1e9ed
DICA:  Este erro pode acontecer também se a sequência de bytes não 
corresponde a codificação esperado pelo servidor, que é controlada 
por "client_encoding".

[trocando a codificação de caracteres do terminal e digitando novamente]

template1=# select upper('áéí');
  upper
-------
  ÁÉÍ
(1 registro)

Tempo: 0,273 ms


-- 
   Euler Taveira de Oliveira
   http://www.timbira.com/
_______________________________________________
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a