# Umlaute in psql

**URL:** https://www.pg-forum.de/t/umlaute-in-psql/12272
**Category:** Konfiguration & Verwaltung
**Created:** [5. Juni 2021 um 13:15 UTC](https://www.pg-forum.de/t/umlaute-in-psql/12272 "2021-06-05T13:15:46Z")
**Posts on this page:** 20
**Page:** 1

<div class="post-metadata">

### Author: ![DataMower](https://www.pg-forum.de/letter_avatar_proxy/v4/letter/d/b3f665/32.png) [@DataMower](https://www.pg-forum.de/u/DataMower)
#### Post date: [5. Juni 2021 um 13:15 UTC](https://www.pg-forum.de/t/umlaute-in-psql/12272/1 "2021-06-05T13:15:46Z")

</div>

Hallo, ich bin Einsteiger in Sachen PostgreSQL. In der SQL Shell (psql) habe ich festgestellt, dass die Umlaute nicht korrekt angezeigt werden, z.B. ‘ü’ wird als eine hochgestellte 3 dargestellt. ö als Zeichen für geteilt durch. ä als o mit einer Tilde darüber…

Wie lässt sich dies ändern? Ist das ein Konfigurations-Problem?

---

<div class="post-metadata">

### Author: ![akretschmer](https://www.pg-forum.de/letter_avatar_proxy/v4/letter/a/a6a055/32.png) [@akretschmer](https://www.pg-forum.de/u/akretschmer)
#### Post date: [5. Juni 2021 um 13:20 UTC](https://www.pg-forum.de/t/umlaute-in-psql/12272/2 "2021-06-05T13:20:24Z")

</div>

```auto
psql.bin (13.2.5 (Ubuntu 13.2.5-1+ubuntu4), server 13.2.5 (Ubuntu 13.2.5-1+ubuntu4))
Type "help" for help.

edb=# select 'äöüÄÖÜß';
 ?column? 
----------
 äöüÄÖÜß
(1 row)

edb=*# 
```

hier geht es. Version, Betriebsystem, …

---

<div class="post-metadata">

### Author: ![DataMower](https://www.pg-forum.de/letter_avatar_proxy/v4/letter/d/b3f665/32.png) [@DataMower](https://www.pg-forum.de/u/DataMower)
#### Post date: [5. Juni 2021 um 13:30 UTC](https://www.pg-forum.de/t/umlaute-in-psql/12272/3 "2021-06-05T13:30:34Z")

</div>

Habe psql 13.3 und Windows 10. Wenn ich mit \help z.B. die Hilfe aufrufe, kommt:

Verf(3)gbare Hilfe…

Stellvertretend für ü erscheint eine 3 im Exponent…

---

<div class="post-metadata">

### Author: ![DataMower](https://www.pg-forum.de/letter_avatar_proxy/v4/letter/d/b3f665/32.png) [@DataMower](https://www.pg-forum.de/u/DataMower)
#### Post date: [5. Juni 2021 um 13:34 UTC](https://www.pg-forum.de/t/umlaute-in-psql/12272/4 "2021-06-05T13:34:20Z")

</div>

Wenn ich den gleichen Befehl eingebe:

```
SELECT 'äöü';

```

Kommt…

```
FEHLER: Zeichen mit Byte-Folge 0x81 in Kodierung »WIN1252« hat keine Entsprechung in Kodierung »UTF8«

```

 ![image](https://www.pg-forum.de/uploads/default/original/1X/77c280aa491bb2ce08e6c4117039e684576ec454.png)

z.B. im Screenshot wird “Eigentümer” nicht korrekt angezeigt.

---

<div class="post-metadata">

### Author: ![castorp](https://www.pg-forum.de/letter_avatar_proxy/v4/letter/c/e99b99/32.png) [@castorp](https://www.pg-forum.de/u/castorp)
#### Post date: [5. Juni 2021 um 13:58 UTC](https://www.pg-forum.de/t/umlaute-in-psql/12272/5 "2021-06-05T13:58:25Z")

</div>

Wenn Du `psql` startest bekommst Du vermutlich eine Warnung wie diese:

```plaintext
WARNING: Console code page (850) differs from Windows code page (1252)
         8-bit characters might not work correctly. See psql reference
         page "Notes for Windows users" for details.
Type "help" for help.

```

Damit `psql` unter Windows Umlaute korrekt darstellt müssen `client_encoding` und die aktuelle Windows code page zusammen passen.

 ![cmd-1](https://www.pg-forum.de/uploads/default/original/1X/c8afa890b61c5a301856cdf1fe3b688086847ee1.png)

Wenn man aber die Codepage via `chcp` umstellt und dann `client_encoding` anpasst passt das:

 ![cmd-2](https://www.pg-forum.de/uploads/default/original/1X/928cd6c55655b5b13e1332882ce6322d9c3dfbdf.png)

---

<div class="post-metadata">

### Author: ![DataMower](https://www.pg-forum.de/letter_avatar_proxy/v4/letter/d/b3f665/32.png) [@DataMower](https://www.pg-forum.de/u/DataMower)
#### Post date: [5. Juni 2021 um 14:05 UTC](https://www.pg-forum.de/t/umlaute-in-psql/12272/6 "2021-06-05T14:05:59Z")

</div>

![image](https://www.pg-forum.de/uploads/default/original/1X/fec6c6a6a0d916f111434d817980a0a9e50d2464.jpeg)

Ja, genau: bei mir erscheint die Meldung oben. Aber das mit der Codepage ging mir jetzt etwas zu schnell. Muss ich etwas in der Kommandozeile eingeben und ändern? Oder muss ich in psql etwas eingeben?

---

<div class="post-metadata">

### Author: ![castorp](https://www.pg-forum.de/letter_avatar_proxy/v4/letter/c/e99b99/32.png) [@castorp](https://www.pg-forum.de/u/castorp)
#### Post date: [5. Juni 2021 um 14:54 UTC](https://www.pg-forum.de/t/umlaute-in-psql/12272/7 "2021-06-05T14:54:40Z")

</div>

Die entsprechenden Befehle sind alle in meinem 2. Screenshot zu sehen.

---

<div class="post-metadata">

### Author: ![DataMower](https://www.pg-forum.de/letter_avatar_proxy/v4/letter/d/b3f665/32.png) [@DataMower](https://www.pg-forum.de/u/DataMower)
#### Post date: [5. Juni 2021 um 15:04 UTC](https://www.pg-forum.de/t/umlaute-in-psql/12272/8 "2021-06-05T15:04:06Z")

</div>

![image](https://www.pg-forum.de/uploads/default/original/1X/79a6182cefb98871e9147172ee53a4986fc15040.jpeg)

Bei mir erscheint dies…ist doch komisch, wenn ich psql installiert habe, oder nicht?

---

<div class="post-metadata">

### Author: ![castorp](https://www.pg-forum.de/letter_avatar_proxy/v4/letter/c/e99b99/32.png) [@castorp](https://www.pg-forum.de/u/castorp)
#### Post date: [5. Juni 2021 um 15:17 UTC](https://www.pg-forum.de/t/umlaute-in-psql/12272/9 "2021-06-05T15:17:01Z")

</div>

Das hat nichts mit Postgres zu tun. Das Verzeichnis in dem `psql.exe` liegt wurde schlicht nicht in die Liste der Verzeichnisse in der Umgebungsvariable `PATH` aufgenommen.

---

<div class="post-metadata">

### Author: ![DataMower](https://www.pg-forum.de/letter_avatar_proxy/v4/letter/d/b3f665/32.png) [@DataMower](https://www.pg-forum.de/u/DataMower)
#### Post date: [5. Juni 2021 um 15:26 UTC](https://www.pg-forum.de/t/umlaute-in-psql/12272/10 "2021-06-05T15:26:46Z")

</div>

Ok. Ich habe postgres normal installiert. Wie kann ich nachträglich psql.exe in die Liste der Verzeichnisse der Umgebungsvariable `PATH` aufnehmen?

---

<div class="post-metadata">

### Author: ![castorp](https://www.pg-forum.de/letter_avatar_proxy/v4/letter/c/e99b99/32.png) [@castorp](https://www.pg-forum.de/u/castorp)
#### Post date: [5. Juni 2021 um 15:29 UTC](https://www.pg-forum.de/t/umlaute-in-psql/12272/11 "2021-06-05T15:29:12Z")

</div>

> **[Windows Umgebungsvariablen (Benutzerdefiniert, Systemvariablen) bearbeiten »...](https://www.windows-faq.de/2017/07/10/windows-umgebungsvariablen-benutzerdefiniert-systemvariablen-bearbeiten/)**

---

<div class="post-metadata">

### Author: ![DataMower](https://www.pg-forum.de/letter_avatar_proxy/v4/letter/d/b3f665/32.png) [@DataMower](https://www.pg-forum.de/u/DataMower)
#### Post date: [5. Juni 2021 um 15:40 UTC](https://www.pg-forum.de/t/umlaute-in-psql/12272/12 "2021-06-05T15:40:06Z")

</div>

Ok, danke. Habe es gelesen und komme jetzt in die Umgebungsvariablen rein. Was noch hilfreich wäre, wenn ich wüsste, ob ich `PATH` als Umgebungsvariable oder Systemvariable verändern muss. Muss ich dann den Pfad von psql.exe in die Liste von `PATH` ziehen?

---

<div class="post-metadata">

### Author: ![DataMower](https://www.pg-forum.de/letter_avatar_proxy/v4/letter/d/b3f665/32.png) [@DataMower](https://www.pg-forum.de/u/DataMower)
#### Post date: [5. Juni 2021 um 17:18 UTC](https://www.pg-forum.de/t/umlaute-in-psql/12272/13 "2021-06-05T17:18:06Z")

</div>

@castorp ich bin leider noch nicht ganz durch…darf ich noch um deine Hilfe bitten? Ich finde leider psql.exe nicht…

“C:\Program Files\PostgreSQL\13\scripts\runpsql.bat”

Ich habe eine Verknüpfung zu runpsql.bat auf dem Desktop und ich steige so in psql ein.

 ![image](https://www.pg-forum.de/uploads/default/original/1X/bca21e584e4882a423ee7cea0e9a140cf9e1b823.png)

Müsste ich hier den Pfad eingeben von runpsql.bat? Oder wie ist das Vorgehen?

---

<div class="post-metadata">

### Author: ![castorp](https://www.pg-forum.de/letter_avatar_proxy/v4/letter/c/e99b99/32.png) [@castorp](https://www.pg-forum.de/u/castorp)
#### Post date: [5. Juni 2021 um 19:16 UTC](https://www.pg-forum.de/t/umlaute-in-psql/12272/14 "2021-06-05T19:16:42Z")

</div>

`psql.exe` liegt normalerweise in dem `bin` Verzeichnis, also müsstest Du es so aufrufen:

```nohighlight
"C:\Program Files\PostgreSQL\13\bin\psql"

```

Wenn `C:\Program Files\PostgreSQL\13\bin` im Pfad ist, dann reicht halt auch psql. Das sind aber Grundkenntnisse in der Bedienung eines Windows Computer und hat nichts mit PostgreSQL zu tun.

Was genau die Batchdatei macht, die Du hast, kann ich nicht sagen.

---

<div class="post-metadata">

### Author: ![DataMower](https://www.pg-forum.de/letter_avatar_proxy/v4/letter/d/b3f665/32.png) [@DataMower](https://www.pg-forum.de/u/DataMower)
#### Post date: [5. Juni 2021 um 19:21 UTC](https://www.pg-forum.de/t/umlaute-in-psql/12272/15 "2021-06-05T19:21:44Z")

</div>

Habe vorhin diesen Artikel gefunden:  
[Der Befehl xxx ist entweder falsch geschrieben oder konnte nicht gefunden werden - Tipps & Tricks (wintotal.de)](https://www.wintotal.de/tipp/der-befehl-xxx-ist-entweder-falsch-geschrieben-oder-konnte-nicht-gefunden-werden/)

Wahrscheinlich muss ich es so machen…

Meine Systemvariablen sehen so aus:

 ![image](https://www.pg-forum.de/uploads/default/original/1X/036f65b97478291061081392ce83ea63d157af66.png)

---

<div class="post-metadata">

### Author: ![DataMower](https://www.pg-forum.de/letter_avatar_proxy/v4/letter/d/b3f665/32.png) [@DataMower](https://www.pg-forum.de/u/DataMower)
#### Post date: [5. Juni 2021 um 19:41 UTC](https://www.pg-forum.de/t/umlaute-in-psql/12272/16 "2021-06-05T19:41:31Z")

</div>

Habe noch diesen früheren post von dir gefunden:  
[psql Konsole & Encoding - Verwaltungstools / Sonstige - PG-Forum.de](https://www.pg-forum.de/t/psql-konsole-encoding/4559)

Das heisst, die geänderte Einstellung geht nach jedem schliessen von psql verloren…

Gibt es keine andere Möglichkeit, dass die neue Einstellung “bleibt”?

---

<div class="post-metadata">

### Author: ![castorp](https://www.pg-forum.de/letter_avatar_proxy/v4/letter/c/e99b99/32.png) [@castorp](https://www.pg-forum.de/u/castorp)
#### Post date: [6. Juni 2021 um 08:09 UTC](https://www.pg-forum.de/t/umlaute-in-psql/12272/17 "2021-06-06T08:09:07Z")

</div>

Wie man die Codepage in Windows dauerhaft ändert, weiß ich nicht.

Den entsprechenden `chcp` Aufruf kannst Du natürlich in eine Batchdatei packen und `psql` dann immer über diese Batchdatei starten.

Das `set client_encoding` kannst Du in [psqlrc](https://www.postgresql.org/docs/current/app-psql.html#id-1.9.4.19.10) einstellen.

---

<div class="post-metadata">

### Author: ![DataMower](https://www.pg-forum.de/letter_avatar_proxy/v4/letter/d/b3f665/32.png) [@DataMower](https://www.pg-forum.de/u/DataMower)
#### Post date: [7. Juni 2021 um 13:13 UTC](https://www.pg-forum.de/t/umlaute-in-psql/12272/18 "2021-06-07T13:13:12Z")

</div>

Leider wird der Buchstabe ü immer noch nicht richtig dargestellt, wie im angehängten print screen zu sehen ist.

Ich stelle zuerst die console codepage um mit chcp 1252 und rufe dann psql auf mit psql -U postgres. Die Warnung erscheint zwar nicht mehr, aber wenn ich dann einen Datensatz importiere, dann wird z.B. das ü nicht richtig angezeigt. Du siehst ‘Zürich’ und ‘Graubünden’ wird nicht korrekt angezeigt. Woran könnte das liegen?

Der Datensatz ist eine .sql-Datei, die ich mit [mockaroo.com](http://mockaroo.com) erstellt habe und dann mit \i Pfad/zur/.sql-Datei in postgres importiere. In der .sql-Datei sind die Umlaute korrekt.

Das mit dem client\_encoding habe ich noch nicht ganz verstanden, was zu tun ist…könntest du mir das bitte nochmal kurz erklären? Danke!

 ![image](https://www.pg-forum.de/uploads/default/original/1X/1564b55835d9390f6dd04ad650fc29fe5bbde335.png)

---

<div class="post-metadata">

### Author: ![castorp](https://www.pg-forum.de/letter_avatar_proxy/v4/letter/c/e99b99/32.png) [@castorp](https://www.pg-forum.de/u/castorp)
#### Post date: [7. Juni 2021 um 13:53 UTC](https://www.pg-forum.de/t/umlaute-in-psql/12272/19 "2021-06-07T13:53:18Z")

</div>

Vermutlich sind die Zeichen in der DB als UTF-8 gespeichert. Dann brauchst Du wohl eher codepage 65001 und client\_encoding = UTF8 - aber generell funktioniert UTF-8 unter Windows auf der Konsole eher mässig. Vielleicht wäre ein [anderer SQL Client](https://wiki.postgresql.org/wiki/PostgreSQL_Clients) eine bessere Idee

---

<div class="post-metadata">

### Author: ![DataMower](https://www.pg-forum.de/letter_avatar_proxy/v4/letter/d/b3f665/32.png) [@DataMower](https://www.pg-forum.de/u/DataMower)
#### Post date: [7. Juni 2021 um 18:07 UTC](https://www.pg-forum.de/t/umlaute-in-psql/12272/20 "2021-06-07T18:07:16Z")

</div>

Ich habe mal den pgcli SQL Client installiert mit Ananconda. Dies hat gut funktioniert. Ich weiss aber leider nicht, wie ich pgcli überhaupt benutze, um an meine Datenbank reinzukommen. Es scheint, dass ich den Anaconda prompt benutzen muss. Wenn ich pgcli eingebe, werde ich nach einem Administratoren Passwort gefragt. Ist das nicht das Passwort, das ich bei der Installation von postgres registriert habe, so wie es läuft, wenn ich psql auf Windows starte? Ich blick da ehrlich gesagt nicht ganz durch. Hast du pgcli schon mal genutzt?

[Nächste Seite](https://www.pg-forum.de/t/umlaute-in-psql/12272.md?page=2)
