Am Donnerstag, den 22.03.2012, 12:45 +0100 schrieb Oliver Fromme:
> Marc Santhoff wrote:
> > Ich muß eine PostgreSQL-Datenbank aus der Ferne bedienen. Diese ist auf
> > UTF8 als Kodierung eingestellt. Mein lokaler REchner läuft üblicherweise
> > mit ISO8859-1 bzw. -15.
>
> Der psql-Client verwendet zur Eingabe die readline-Library.
> Diese unterstützt nur 8Bit-Kodierungen, d.h. kein UTF-8
> (zumindest die etwas angestaubte Version in FreeBSD).
> Daher hilft Dir auch xterm im UTF-8-Modus nichts.
>
> Ist aber nicht schlimm, weil Postgres automatisch die
> Kodierungen transparent konvertiert. Man muss ihm nur
> sagen, welche man verwendet.
Wie schon in anderer Mail geschrieben, war bekannt, bin aber falsch
damit umgegangen ...
> Gib mal in psql folgendes Kommando ein:
>
> \encoding LATIN9
>
> Das schaltet den Client auf ISO 8859-15 um. Das xterm muss
> natürlich auch auf ISO 8859 belassen werden, nicht UTF-8.
> Dann sollte es klappen. Du kannst das \encoding-Kommando
> auch in Deine ~/.psqlrc schreiben, damit es immer beim Start
> ausgeführt wird.
So geht's.
> Wenn man neugierig ist, kann man sich mit dem folgendenden
> Kommando alle unterstützten Konvertierungen anzeigen lassen:
>
> \dcS
>
> Und um nur die Konvertiertungen für ISO 8859-15 zu sehen:
>
> \dc *8859_15*
>
> Dort wirst du die Konvertierungen von und zu UTF-8 finden.
> Last but not least zeigt Dir das Kommando \l die Encodings
> aller Datenbanken an, aber das kennst Du sicher bereits.
Ah ja, das hatte ich bisher übersehen.
> Das ist aber alles nur von sekundärem Interesse. Wie schon
> gesagt, wird automatisch konvertiert. Entscheidend ist nur,
> dass das Encoding auf der Client-Seite richtig eingestellt
> ist.
>
> > Und wie würde sich eine Lösung für die Konsole, also ohne X-Server,
> > davon unterscheiden?
>
> Die würde sich gar nicht unterscheiden. Vorausgesetzt, Du
> verwendest auf der Konsole ebenfalls ISO 8859 (mit passendem
> Zeichensatz).
Klar, ja.
> Gruß
> Olli
>
> PS: Nur falls noch nicht bekannt: "Latin-9" ist das gleiche
> wie ISO 8859-15. Da die Latin-Kodierungen im Vergleich zu
> ISO 8859 Lücken haben (es fehlen halt die nichtlateinischen
> Alphabete), stimmen die Nummern nicht überein.
Genau, darauf wäre ich von selbst nicht gekommen.
Vielen Dank, jetzt klappt's!
-- Marc Santhoff <M.Santhoff(at)web.de> To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org with "unsubscribe de-bsd-questions" in the body of the messageReceived on Thu 22 Mar 2012 - 13:12:07 CET