PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Conversion d'une base de données Postgresql de SQL_ASCII, contenant des types d'encodage mixtes, en UTF-8

C'est exactement le problème que Encoding::FixLatin a été écrit pour résoudre*.

Si vous installez le module Perl, vous obtiendrez également le fix_latin utilitaire de ligne de commande que vous pouvez utiliser comme ceci :

pg_restore -O dump_file | fix_latin | psql -d database

Lire les 'Limitations ' de la documentation pour comprendre son fonctionnement.

[*] Notez que je suppose que lorsque vous dites ISO-8859-x, vous voulez dire ISO-8859-1 et quand vous dites CP125x, vous voulez dire CP1252 - parce que le mélange d'ASCII, UTF-8, Latin-1 et WinLatin-1 est un cas courant. Mais si vous avez vraiment un mélange d'encodages orientaux et occidentaux, alors désolé mais vous êtes foutu :-(