Кодировка

From: Maxim Vetrov <muxas(at)mail(dot)ru>
To: pgsql-ru-general(at)postgresql(dot)org
Subject: Кодировка
Date: 2005-10-22 07:49:24
Message-ID: 4359EF04.2080801@mail.ru
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-ru-general

Добрый день!

Во-первых, заметил такую особенность - на форме подписки

http://www.postgresql.org/community/lists/subscribe

в поле выбора отстутвует русский список рассылки. Там вообще нет ничего
похожего на regional lists.
Как тогда подписаться ?

*** Помаявшись немного, подписался. Но все же попроще бы процедуру
сделать :-)

Моя проблема такая. Есть база на Sybase SQLAnywhere 5.0 (под win).
Клиентское приложение под Windows, написано на PowerBuilder. Для
соединения с базой используется ODBC. Задача отлаженная, работает без
глюков.

Хочу перенести базу на PostgreSQL 8.03 под FreeBSD. В качестве теста
создал базу в кодировке WIN, тестовую таблицу. Под виндой поставил
драйвер ODBC. Приложение подключается, тестовая таблица отображается.
Пытаюсь заполнить записями. В таблице два поля, integer и char(80). При
отображении записи показываются только в поле с типом integer. В поле
char пустота. Причем как для русских так и для английских букв. Иду на
сервер, через psql смотрю записи - сохраняло то что нужно, отображает
нормально. Приложение ориентировано на работу с кодировкой CP1251, к
сожалению исходников нет, все со слов разработчика. Под Sybase база
крутиться на CP2151, проверял. В чем мождет быть проблема?
Вот еще что заметил в логах ODBC:

>> conn=10303424, query='set DateStyle to 'ISO''
>> conn=10303424, query='set geqo to 'OFF''
>> conn=10303424, query='set extra_float_digits to 2'
>> conn=10303424, query='SET client_encoding TO
WIN' << Эта строка прописана в настройках
драйвера мной на всякий случай
>> conn=10303424, query='select oid from pg_type where typname='lo''
>> [ fetched 0 rows ]
>> conn=10303424, query='select pg_client_encoding()'
>> [ fetched 1 rows ]
>> [ Client encoding = 'WIN' (code = 22) ]
>> conn=10303424, query='set client_encoding to 'UTF8''
<< Вот эта строка всегда присутсвует при инициализации соединения ODBC

В случае, если убрать из настроек драйвера принудительное указание
кодировки клиента, то последняя строка, где устанавливается UTF8, все
равно не исчезает. Она там всегда торчит. Вызывает большие сомнения ее
надобность. Может она мне "карты путает"?

С уважением,
Максим

Browse pgsql-ru-general by date

  From Date Subject
Next Message Genix 2005-10-22 13:57:40 не работает индекс по таблице
Previous Message Maxim Vetrov 2005-10-22 07:41:14 Кодировка