[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: postgres и unicode



Добрый день

Alexander Danilov wrote:
День добрый!

Помогите разобраться со странной локализацией postgres'а.
У меня woody. PostgreSQL из дистрибутива. Версия 7.2.2-0.woody.1
при инсталляции выбрал кодировку по умолчанию unicode.
локаль выбрал C.
соответственно все базы в unicode.

alex/pts/2/13:36 alex$ locale
LANG=ru_RU.KOI8-R
LC_CTYPE="ru_RU.KOI8-R"
LC_NUMERIC="ru_RU.KOI8-R"
LC_TIME="ru_RU.KOI8-R"
LC_COLLATE="ru_RU.KOI8-R"
LC_MONETARY="ru_RU.KOI8-R"
LC_MESSAGES="ru_RU.KOI8-R"
LC_PAPER="ru_RU.KOI8-R"
LC_NAME="ru_RU.KOI8-R"
LC_ADDRESS="ru_RU.KOI8-R"
LC_TELEPHONE="ru_RU.KOI8-R"
LC_MEASUREMENT="ru_RU.KOI8-R"
LC_IDENTIFICATION="ru_RU.KOI8-R"
LC_ALL=

$ psql ecatalog
ecatalog=# \encoding koi8
ecatalog=# select upper('qweйцу');
upper --------
 QWEйцу
(1 row)


то есть русские буквы в верхний регистр не преобразуются
пробовал в /etc/postgresql/{postgresql.env,postmaster.conf}
выставлять LANG и LC_ALL в ru_RU.UTF-8,
но результат не изменился.

Что делать?


Скорее всего дело в том, что в момент создания базы locale была 'C'. Надо пересоздать базу с locale ru_RU.UTF-8 и все станет как надо (у меня работало).

Всего хорошего.
--
Dmitry Tsitelov
mailto:cit@tag-ltd.spb.ru




Reply to: