metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2013-12-29 03:26 pm

Postgresql

А почему в сабже, установленном на винде есть Russian_Russia.1251 в качестве доступной collation, а на убунте - только ru_RU.UTF8 - и то, если установить соответствующий language pack. Это ж под каждый вариант установки скрипты создания базы править надо.

Мне почему-то казалось, что серверу БД полагаться на черт знает что, установленное косорукими клиентскими эникеями в качестве локали ОС, нежелательно и лучше иметь свою независимую коллекцию локалей и collation.

[identity profile] berezovsky.livejournal.com 2013-12-29 01:23 pm (UTC)(link)
Видимо, по той же причине, по которой музыкальному плюеру нужен оракл для хранения музыкальных песен.

[identity profile] nf94vnm.livejournal.com 2013-12-30 08:41 am (UTC)(link)
нет, это потому что березоффский живет возле универмага "рига", где живут все минские задроты.

[identity profile] nivanych.livejournal.com 2013-12-29 01:40 pm (UTC)(link)
На винде же есть ru_RU.UTF8?

[identity profile] metaclass.livejournal.com 2013-12-29 01:54 pm (UTC)(link)
Нету. Говорит, invalid locale.

[identity profile] nivanych.livejournal.com 2013-12-29 03:32 pm (UTC)(link)
Тогда, пожалуй, для адекватного описания ситуации, я призываю яйседа.
develop7: (dero)

[personal profile] develop7 2013-12-29 09:45 pm (UTC)(link)
хватит и его конной статуи

[identity profile] nivanych.livejournal.com 2013-12-31 07:33 am (UTC)(link)
Согласен. Тогда призываю его конную статую!

[identity profile] jek-hor.livejournal.com 2013-12-29 02:38 pm (UTC)(link)
А кто-то ещё не похоронил однобайтные кодировки?

[identity profile] volodymir-k.livejournal.com 2013-12-29 02:55 pm (UTC)(link)
linux не похоронил

[identity profile] metaclass.livejournal.com 2013-12-29 03:07 pm (UTC)(link)
pgAdmin зачем-то базу создает в 1251 на винде, что тоже сильно удивляет.

[identity profile] norguhtar.livejournal.com 2013-12-30 05:54 am (UTC)(link)
Умолчание стоит такое. Он ее создает копированием template0/ Там этот ад с локалями и кодировками выпилили только в 9.2.x. В ручную можно запилить UTF-8 надо просто явно указывать.

[identity profile] pavelusa.livejournal.com 2013-12-30 12:29 am (UTC)(link)
И Windows не похоронил - всё ещё есть ANSI в простых текстовых редакторах типа Блокнота и сама ANSI - системная кодировка (system code page), CP_ACP - однобайтовая:
- ANSI = 1251 если системная локаль (то же самое, что выставляется как язык для не-Unicode программ) "Русский, Россия"
- ANSI = 1252 на немецких, английских, американских, французских Windows - системная локаль - "Западная Европа, windows-1252"
- 1250 - "Центральная Европа"
- 1257 - "Балтика"
- ...

ПОэтому все юникодовые программные среды должны помнить о сериализации - чтение посторонних файлов или создание файлов - забудешь в Java явно указать, что хочешь в UTF-8 вывести текст, и получишь только ???? если в Java в юникоде - немецкие или японские буковки, а ANSI =1251 -
перекодирование UTF-16--->1251 их 'убьёт'. И наоборот

:)
Edited 2013-12-30 00:31 (UTC)

[identity profile] hshhhhh.livejournal.com 2013-12-30 10:12 am (UTC)(link)
люди привыкли решать проблемы и без них им неуютно.

[identity profile] mc6312.livejournal.com 2013-12-30 08:20 am (UTC)(link)
Внезапно, grep ru_RU /usr/share/i18n/SUPPORTED говорит, что
ru_RU.KOI8-R KOI8-R
ru_RU.UTF-8 UTF-8
ru_RU ISO-8859-5
ru_RU.CP1251 CP1251

в общем, sudo locale-gen ru_RU.CP1251, Luke!