From: | éric brison <eric(dot)brison(at)anakeen(dot)com> |
---|---|
To: | pgsql-fr-generale(at)postgresql(dot)org |
Subject: | Re: Migrer UTF8 vers LATIN1 |
Date: | 2007-08-16 07:55:55 |
Message-ID: | 46C4030B.1020900@anakeen.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-fr-generale |
David Tokmatchi a écrit :
> Bonjour
>
> Une base Postgres a été crée avec l'encodage UTF8. Cette base est mise
> à jour uniquement par des données venant d'une autre base codée en LATIN1.
> Lors d'insertion des caractères accentués j'ai eu des erreurs et à
> l'avenir pour assurer la cohérence des données, je préfère aligner
> l'encodage des deux bases.
> J'ai vu qu'il y la possibilité d'utiliser la commande :*set
> client_encoding = latin1 * avant de lancer les scripts. Sachant que
> mes données de la base sont exclusivement celles de LATIN1 :
>
> Comment faire pour migrer la base de UTF8 vers LATIN1 ?
>
Salut,
Pour réencoder des bases j'utilise la commande recode.
A ma connaissance il n'est pas possible de changer l'encodage a posteriori.
Les étapes à suivre sont :
1) Dumper la base : pg_dump mabase > mabase.sql.utf8
2) Reencoder : cp mabase.sql.utf8 mabase.sql.lat1; recode u8..l9
mabase.sql.lat1
3) Détruire la base (ou la renommer) : dropdb mabase
4) Recréer la base : createdb -E latin1 mabase
5) Réinjecter : psql mabase -f mabase.sql.lat1
Eric.
From | Date | Subject | |
---|---|---|---|
Next Message | Jean-Christophe Arnu | 2007-08-16 08:29:16 | Re: Migrer UTF8 vers LATIN1 |
Previous Message | David Tokmatchi | 2007-08-16 07:42:04 | Migrer UTF8 vers LATIN1 |