powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Кодировка в консоли psql
7 сообщений из 7, страница 1 из 1
Кодировка в консоли psql
    #39071492
skvit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день.

Установил PostgreSQL 9.4 (x86) под ws2008r2. Проблема с консолью при запуске команды PSQL.
Журнал с логами тоже отображается с нарушенной кодировкой в среде PostgreSQL.
В windows locale = Russia.

D:\Program Files\PostgreSQL\9.4\bin>psql --help
psql - С?С'Р? РёР?С'РчС?акС'РёР?Р?С<Р№ С'РчС?Р?РёР?Р°Р> PostgreSQL.

Р?С?РїР?Р>С?Р·Р?Р?Р°Р?РёРч:
psql [Р?Р?Р Р?Р?РРўР ]... [Р'Р" [Р?Р?Р>Р¬Р-Р?Р'Р?РўРР>Р¬]]

Р?Р+С%РёРч РїР°С?Р°Р?РчС'С?С<:
-c, --command=Р?Р?Р?Р?Р?Р"Р? Р?С<РїР?Р>Р?РёС'С? Р?Р?Р?С? РєР?Р?Р°Р?Р?С? (SQ
L РёР>Рё Р?Р?С?С'С?РчР?Р?С?С?) Рё Р?С<Р№С'Рё
-d, --dbname=Р'Р" РёР?С? РїР?Р?РєР>С?С+Р°РчР?Р?Р№ Р+азС< Р?Р°Р?Р?С<


D:\Program Files\PostgreSQL\9.4\bin>psql
Р?Р°С?Р?Р>С?: -- в этом месте должно отображаться слово "Password:"


CREATE DATABASE xxx
WITH OWNER = postgres
ENCODING = 'UTF8'
TABLESPACE = pg_default
LC_COLLATE = 'Russian_Russia.1251'
LC_CTYPE = 'Russian_Russia.1251'
CONNECTION LIMIT = -1;

Как решить проблему?
...
Рейтинг: 0 / 0
Кодировка в консоли psql
    #39071568
p2.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skvit,

поставить кодировку приложения (chcp для cmd) в соответствии с клиент_энкодингом. стандартная cmd не дружит с utf8 (65001).
...
Рейтинг: 0 / 0
Кодировка в консоли psql
    #39071723
skvit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
p2.,

У меня client_encoding = 'UNICODE'. Какую кодировку передавать в chcp?
...
Рейтинг: 0 / 0
Кодировка в консоли psql
    #39071959
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skvitУ меня client_encoding = 'UNICODE'.
Смени на WIN866.
...
Рейтинг: 0 / 0
Кодировка в консоли psql
    #39072241
skvit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov,

У меня по умолчанию chcp=866 (cp866). А какой код для chcp у WIN866?
...
Рейтинг: 0 / 0
Кодировка в консоли psql
    #39073360
Alex Marmuzevich
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
bat (cmd) file:
Код: plsql
1.
2.
3.
4.
5.
6.
set PGPASSWORD=dddddd
SET PGCLIENTENCODING=utf-8
chcp 65001
rem set psql="C:\Program Files\PostgreSQL\9.4\bin\psql.exe"
set psql="C:\Program Files\PostgreSQL\9.3\bin\psql.exe"
%psql% -f _main.pgsql wwww xxxxx



_main.pgsql (part):
Код: plsql
1.
2.
3.
4.
5.
\set ON_ERROR_STOP on
\set ECHO all
\timing on
\set lc_messages TO 'C'
.................................



Всё сказочно выводит
...
Рейтинг: 0 / 0
Кодировка в консоли psql
    #39073427
Павел Лузанов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skvit,

Какой инсталлятор PostgreSQL использовал?
У меня такое же с EnterpriseDB-шным.

Если устроит английский интерфейс psql, то перед запуском установи переменную:
c:\> set LANGUAGE=en

Если принципиально нужны русские буквы для сообщений psql, то попробуй эту сборку:
http://www.postgrespro.ru/windows

Это относится только к интерфейсу программы, для работы с данными в базе важно чтобы кодировка cmd.exe и постгреса были в соответствии.
Например:
c:\> chcp 1251
шрифты Lucida Console
psql
\encoding win1251 (по идее psql сам так установит)

Или, как уже рекомендовали, chcp 65001 и \encoding UTF-8
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Кодировка в консоли psql
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]