| 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: | Whole Thread | Raw Message | 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 |