Postgresql: установить кодировку psql клиента по умолчанию

11

Когда я подключаюсь к Postgresql DB psql, я часто получаю следующие сообщения:

=> SELECT * FROM question_view ;
ERROR:  character with byte sequence 0xd7 0x9e in encoding "UTF8" has no equivalent in encoding "LATIN1"

Следуя такому ответу , я понимаю, что мне следует соответствующим образом изменить кодировку клиента:

SET client_encoding = 'UTF8';

Изменять client_encodingкаждый раз, когда я подключаюсь к БД, громоздко. Есть ли способ для постоянной настройки этого параметра, либо в .pgpassфайле, либо где-либо еще?

Адам Матан
источник

Ответы:

13

Есть ли способ для постоянной настройки этого параметра, либо в файле .pgpass, либо где-либо еще

Да, есть: это ~/.psqlrc(или %APPDATA%\postgresql\psqlrc.confв Windows)

Подробности см. В руководстве: http://www.postgresql.org/docs/current/static/app-psql.html#AEN88713.

a_horse_with_no_name
источник
2
Добавление SET client_encoding = 'UTF8';к ~/.psqlrcпроделанной работе. Спасибо!
Адам Матан
Похоже, что это не работает при (повторном) подключении из psqlсеанса, например, после перезапуска сервера.
Адам Маклер
1
Мне пришлось создать этот файл в Windows, а затем установить пользовательскую среду var с именем PSQLRC, указывающую на этот каталог.
Жалоб