collate?..
Jean-Paul Argudo/ = 30 Juillet, 2007 - 17:11
Bonjour,
Merci de me retourner la sortie de la requête suivante:
select name, setting from pg_settings where name ~* 'lc';
De la même façon, quelles locales avez-vous d'installées sur le système?
Quel est l'encodage utilisé pour la base de données?
Je pense que c'est un problème de COLLATE. J'ai besoin d'un peu plus d'infos pour vous répondre.
--
Jean-Paul ARGUDO
http://dalibo.com | http://dalibo.org
[ Vous devez
vous connecter pour poster des commentaires ]
Un peu plus d'infos
aitali/ = 30 Juillet, 2007 - 17:38
Je ne me suis jamais confronté sérieusement aux locales, je vais essayer de vous donner un maximum d'informations.
Sortie de votre requête :
"lc_collate";"fr_FR"
"lc_ctype";"fr_FR"
"lc_messages";"fr_FR"
"lc_monetary";"fr_FR"
"lc_numeric";"fr_FR"
"lc_time";"fr_FR"
locale -a | grep fr_FR
fr_FR
fr_FR@euro
fr_FR.iso88591
fr_FR.iso885915@euro
fr_FR.utf8
locale
LANG=en_GB.UTF-8
LC_CTYPE="en_GB.UTF-8"
LC_NUMERIC="en_GB.UTF-8"
LC_TIME="en_GB.UTF-8"
LC_COLLATE="en_GB.UTF-8"
LC_MONETARY="en_GB.UTF-8"
LC_MESSAGES="en_GB.UTF-8"
LC_PAPER="en_GB.UTF-8"
LC_NAME="en_GB.UTF-8"
LC_ADDRESS="en_GB.UTF-8"
LC_TELEPHONE="en_GB.UTF-8"
LC_MEASUREMENT="en_GB.UTF-8"
LC_IDENTIFICATION="en_GB.UTF-8"
LC_ALL=
La base de donnée est encodée en UTF8, et placée sur une Red Hat.
---
Là où je suis très étonné, c'est que je ne rencontre pas ce problème sur mon serveur de test (même données, même version de PG, même encodage). Par contre il est équipé d'Ubuntu, et dispose de moins de locales.
Sortie de votre requête :
"lc_collate";"fr_FR.UTF-8"
"lc_ctype";"fr_FR.UTF-8"
"lc_messages";"fr_FR.UTF-8"
"lc_monetary";"fr_FR.UTF-8"
"lc_numeric";"fr_FR.UTF-8"
"lc_time";"fr_FR.UTF-8"
locale -a | grep fr_FR
fr_FR.utf8
locale
LANG=fr_FR.UTF-8
LC_CTYPE="fr_FR.UTF-8"
LC_NUMERIC="fr_FR.UTF-8"
LC_TIME="fr_FR.UTF-8"
LC_COLLATE="fr_FR.UTF-8"
LC_MONETARY="fr_FR.UTF-8"
LC_MESSAGES="fr_FR.UTF-8"
LC_PAPER="fr_FR.UTF-8"
LC_NAME="fr_FR.UTF-8"
LC_ADDRESS="fr_FR.UTF-8"
LC_TELEPHONE="fr_FR.UTF-8"
LC_MEASUREMENT="fr_FR.UTF-8"
LC_IDENTIFICATION="fr_FR.UTF-8"
LC_ALL=
---
Faudrait-il utiliser "fr_FR.utf8" plutôt que "fr_FR" sur le serveur posant problème ? Est-il possible que ces 2 noms identifient la même locale ?
Merci beaucoup !
[ Vous devez
vous connecter pour poster des commentaires ]
A essayer
Jean-Paul Argudo/ = 30 Juillet, 2007 - 18:17
Bonjour,
Oui, c'est à essayer... "fr_FR.UTF-8" plutôt que "fr_FR" et surtout, au niveau système, "fr_FR.UTF-8" au lieu de "en_GB.UTF-8", dans la mesure du possible.
Mais sans garantie :-/
--
Jean-Paul ARGUDO
http://dalibo.com | http://dalibo.org
[ Vous devez
vous connecter pour poster des commentaires ]
It works
aitali/ = 31 Juillet, 2007 - 11:04
Bonjour,
Petit retour d'expérience, ça fonctionne ! Et sans avoir modifié l'encodage du système.
On a simplement effectué un initdb en utilisant "fr_FR.UTF-8".
Sortie de votre requête :
name | setting
-------------+------------
lc_collate | fr_FR.utf8
lc_ctype | fr_FR.utf8
lc_messages | fr_FR
lc_monetary | fr_FR
lc_numeric | fr_FR
lc_time | fr_FR
(6 rows)
Bien cordialement :-)
[ Vous devez
vous connecter pour poster des commentaires ]