Re: Re: création de base en UTF8

From: "Daniel Verite" <daniel(at)manitou-mail(dot)org>
To: "Stephane Bortzmeyer" <bortzmeyer(at)nic(dot)fr>
Cc: "Jean-Louis =?ISO-8859-15?Q?Lou=EBr?=" <jl(at)machinchose(dot)com>, pgsql-fr-generale(at)postgresql(dot)org
Subject: Re: Re: création de base en UTF8
Date: 2007-10-30 15:10:51
Message-ID: 451b0210-5abf-4fd2-9a84-0bf3c63eabcb@mm
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-fr-generale

Stephane Bortzmeyer wrote:

> 0xe97461 = "éta" en latin-9. Bizarre, d'où ça peut bien venir ?

Ah il me semble que je vois d'où ça vient, grâce à l'option -E.

$ export LC_ALL=fr_FR(at)euro

$ psql --version
psql (PostgreSQL) 8.1.4
contient le support pour l'édition de la ligne de commande

$ psql -E -h/tmp -p5500 -l base_en_utf8
******** REQUETE *********
SELECT d.datname as "Nom",
r.rolname as "Propriétaire",
pg_catalog.pg_encoding_to_char(d.encoding) as "Encodage"
FROM pg_catalog.pg_database d
JOIN pg_catalog.pg_roles r ON d.datdba = r.oid
ORDER BY 1;
**************************

ERROR: invalid byte sequence for encoding "UTF8": 0xe97461
HINT: This error can also happen if the byte sequence does not match the encoding expected by the server, which is controlled by "client_encoding".

Je comprends ça comme:
Le fait de spécifier une base en UTF8 sur la ligne de commande (bien que ce soit inutile avec l'option -l mais bon) implique que le client_encoding passe à UTF8 pour la session.
Le fait d'avoir une locale en latin9 implique la traduction de la colonne rolname en français-latin9, donc le terme "Propriétaire" avec un accent codé en un octet 0xe9. Or c'est en contradiction avec le client_encoding, d'où l'erreur sortie par le serveur au moment de l'exécution de la requête.

--
Daniel
PostgreSQL-powered mail user agent and storage: http://www.manitou-mail.org

In response to

Responses

Browse pgsql-fr-generale by date

  From Date Subject
Next Message jl 2007-10-30 15:16:50 Re: Re: création de base en UTF8
Previous Message Daniel Verite 2007-10-30 14:28:08 Re: Re: création de base en UTF8