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

PostgreSQL :Exporter des données de SQL Server 2008 R2 vers PostgreSQL 9.5

Vous dites à Postgres que la source serait encodée en LATIN1 :

Mais ce n'est pas le cas ou le fichier est endommagé. Sinon, nous ne verrions pas le message d'erreur. Quel est le véritable encodage de '$FilePath\file.txt' ?

Le client_encoding actuel n'est pas pertinent pour cela puisque, citant le manuel sur COPY :

(\copy n'est qu'un wrapper pour SQL COPY en psql.)

Et votre server_encoding est en grande partie hors de propos, aussi - tant que Postgres peut utiliser un conversion intégrée et l'encodage cible contient tous les caractères de l'encodage source - ce qui est le cas pour LATIN1 -> UTF8 :iso_8859_1_to_utf8 .

La source d'erreur restante est donc votre fichier, qui n'est presque certainement pas valide LATIN1.