PostgreSQL: encoding-Probleme unter Windows bei der Verwendung von psql Befehl Linie Dienstprogramm
Arbeite ich in einer zentrale monitoring-system auf Windows 2008 R2, ich habe installiert eine PostgreSQL-9.3 verwenden psql von der Befehlszeile aus.
Wenn ich versuche, den Zugriff auf bestimmte remote-Postgres (ein 8,4 " in meinem wichtigsten Fall) ich habe einen Fehler mit der Codierung:
Befehl:
psql.exe -h 192.168.114.12 -p 5432 -d db_seros_transaccion -U postgres -f script.sql
Fehler:
psql: FATAL: la conversión entre WIN1252 y LATIN1 no está soportada
Ich versuchen Sie, den Satz
SET client_encoding = 'UTF8';
in meinem Skript, aber das problem weiterhin besteht (und mit anderen Codierungen auch, wie LATIN1 & WIN1252).
Nach googeln ich Menschen gefunden, die das update einige Zeilen in die server, um die Verbindung herzustellen, und dies ist ein problem für mich.
Kann mir jemand helfen eine Verbindung mit psql ohne ein update? Ist es möglich?
chcp 65001
vor psql
?Ja, nach der Frage, versuchen Sie mit chcp 65001, 437, 1252 zu testen. nicht Arbeit. jetzt habe ich versucht die sqlrun werfen Sie einen odbc - (in wenigen Minuten die Ergebnisse ;P)
Der 8.4 ist auf Linux, richtig?
Neben
chcp 65001
um eine unicode-codepage möglicherweise müssen Sie auch sagen psql
es in einem unicode-terminal während des Startvorgangs. Sie können nicht SET client_encoding
später, da brauchst du schon eine funktionierende Verbindung. Versuchen Sie auch SET PGCLIENTENCODING=utf-8
(nach der chcp 65001
), bevor Sie psql
und Bericht zurück.Vielen Dank Craig Ringer, funktioniert, funktioniert endlich! Sie sind meine neuen idool jetzt! Die Schritte sind: 1. öffnen Sie die cmd 2. SET PGCLIENTENCODING=utf-8-3. chcp 65001 4. psql -h 192.168.114.12 -U postgres
InformationsquelleAutor Frank N Stein | 2014-01-06
Du musst angemeldet sein, um einen Kommentar abzugeben.
Vielen Dank Craig Ringer, funktioniert, funktioniert endlich! Sie sind meine neuen idool jetzt!
Die Schritte sind:
psql
auf meinem remote-server, wenn meinPGCLIENTENCODING
wariso8859-1
und ich hattechcp 1252
. Ich nehme an, dies lag daran, dass ich meinen server encoding set latin1 (ein.k.ein. iso8859-1). Also: immer Kopf über Codierungen!Hi, Feillen, ja, und mehr. In diesen Tagen habe ich zu migrieren einige Skripte von 2008 bis 2012. Und das enconding Probleme kamen zurück, einige Skripte, die funktioniert gut auf 2008 ändern müssen das enconding oder so ähnlich.
Was bedeutet die Linie 4 zu tun? Ich denke, dass bekommen 1,2,3. Aber ich bin mir nicht sicher über 4!!
der psql-Befehl, ist der test de conection.
Es funktioniert nicht auf win 10.
InformationsquelleAutor Frank N Stein