The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Postgres ORDER BY (наболевшее)"
Вариант для распечатки Архивированная нить - только для чтения! 
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [Проследить за развитием треда]

"Postgres ORDER BY (наболевшее)"
Сообщение от Alex Ilinski emailИскать по авторуВ закладки on 28-Янв-03, 14:17  (MSK)
Привет!

Знаю, что вопрос неоригинален, но тем не менее.

PostgreSQL 7.2.2 (Free BSD 4.6) отказывается правильно сортировать русскоязычные записи по Order By. Читал доку, много думал. База создана with encoding='KOI8_R', в postgres.sh проставлено:

- LANG=ru_RU.KOI8_R
- LC_COLLATE=ru_RU.KOI8_R
- LC_CTYPE=ru_RU.KOI8_R

От безнадеги пытался выставить COLLATE и СTYPE в koi8-r, все равно не работает.

Собрано с --enable-locale. В Фре лежат локали в /usr/share/locale.

Единственное, что не пробовал сделать из доков - это initdb --locale.

Вроде, все расписал.

В общем, совсем не знаю, что делать. Подскажите, пож-ста, а с меня, в случае чего, пиво :)

  Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "RE: Postgres ORDER BY (наболевшее)"
Сообщение от Dawnshade emailИскать по авторуВ закладки on 28-Янв-03, 14:34  (MSK)
>Привет!
>
>Знаю, что вопрос неоригинален, но тем не менее.
>
>PostgreSQL 7.2.2 (Free BSD 4.6) отказывается правильно сортировать русскоязычные записи по Order
>By. Читал доку, много думал. База создана with encoding='KOI8_R', в postgres.sh
>проставлено:
>
>- LANG=ru_RU.KOI8_R
>- LC_COLLATE=ru_RU.KOI8_R
>- LC_CTYPE=ru_RU.KOI8_R
>
>От безнадеги пытался выставить COLLATE и СTYPE в koi8-r, все равно не
>работает.
>
>Собрано с --enable-locale. В Фре лежат локали в /usr/share/locale.
>
>Единственное, что не пробовал сделать из доков - это initdb --locale.
>
>Вроде, все расписал.
>
>В общем, совсем не знаю, что делать. Подскажите, пож-ста, а с меня,
>в случае чего, пиво :)

А запрос-то сам какой?

  Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "RE: Postgres ORDER BY (наболевшее)"
Сообщение от Alex Ilinski emailИскать по авторуВ закладки on 28-Янв-03, 14:36  (MSK)
>>В общем, совсем не знаю, что делать. Подскажите, пож-ста, а с меня,
>>в случае чего, пиво :)
>
>А запрос-то сам какой?

В каком смысле - запрос?

create table a (a char(4));
insert into a values ('a');
insert into a values ('б');
insert into a values ('в');
insert into a values ('г');
insert into a values ('д');

select a from a order by a;

Сортирует неправильно. Хочется, чтобы правильно сортировал :)

  Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "RE: Postgres ORDER BY (наболевшее)"
Сообщение от Dawnshade emailИскать по авторуВ закладки on 28-Янв-03, 15:25  (MSK)
>>>В общем, совсем не знаю, что делать. Подскажите, пож-ста, а с меня,
>>>в случае чего, пиво :)
>>
>>А запрос-то сам какой?
>
>В каком смысле - запрос?
>
>create table a (a char(4));
>insert into a values ('a');
>insert into a values ('б');
>insert into a values ('в');
>insert into a values ('г');
>insert into a values ('д');
>
>select a from a order by a;
>
>Сортирует неправильно. Хочется, чтобы правильно сортировал :)

Попробуй ORDER by ASC или ORDER by DESC

  Рекомендовать в FAQ | Cообщить модератору | Наверх

4. "RE: Postgres ORDER BY (наболевшее)"
Сообщение от Alex Ilinski emailИскать по авторуВ закладки on 28-Янв-03, 18:11  (MSK)
>Попробуй ORDER by ASC или ORDER by DESC

Не помогает.


  Рекомендовать в FAQ | Cообщить модератору | Наверх

5. "RE: Postgres ORDER BY (наболевшее)"
Сообщение от konst emailИскать по авторуВ закладки on 28-Янв-03, 19:12  (MSK)
??? Неправильная сортировка из shell или из скрипта?
Какая $LANG у пользователя к-рый запускает psql (соединяется с БД) (не postgress.sh!)???
Работает ли sort вshell корректно ???
  Рекомендовать в FAQ | Cообщить модератору | Наверх

6. "RE: Postgres ORDER BY (наболевшее)"
Сообщение от Alex Ilinski emailИскать по авторуВ закладки on 28-Янв-03, 20:11  (MSK)
>??? Неправильная сортировка из shell или из скрипта?

И то, и то.

>Какая $LANG у пользователя к-рый запускает psql

ru_RU.KOI8-R

>Работает ли sort в shell корректно ???

Да.


  Рекомендовать в FAQ | Cообщить модератору | Наверх

7. "RE: Postgres ORDER BY (наболевшее)"
Сообщение от konst emailИскать по авторуВ закладки on 28-Янв-03, 20:41  (MSK)
Проблема в Postgres, видимо.
У меня все работает;
Найди файл .profile (для posgres, у меня /usr/local/pgsql)
отредактируй
изучай скрипт p...sh (у меня pgsql.sh)
какие var он использует
после LC_... = koi8r
сделай export LC_..
Больше я ничем не могу помочь.
  Рекомендовать в FAQ | Cообщить модератору | Наверх

8. "RE: Postgres ORDER BY (наболевшее)"
Сообщение от yur Искать по авторуВ закладки on 28-Янв-03, 21:36  (MSK)
>Привет!
>
>Знаю, что вопрос неоригинален, но тем не менее.
>
>PostgreSQL 7.2.2 (Free BSD 4.6) отказывается правильно сортировать русскоязычные записи по Order
>By. Читал доку, много думал. База создана with encoding='KOI8_R', в postgres.sh
>проставлено:

В postgres, если я не ошибаюсь, encoding для КОИ8-Р именуется KOI8
Попробуй сказать psql -l :)

>В общем, совсем не знаю, что делать. Подскажите, пож-ста, а с меня,
>в случае чего, пиво :)

Все так говорят :)))


  Рекомендовать в FAQ | Cообщить модератору | Наверх

9. "RE: Postgres ORDER BY (наболевшее)"
Сообщение от yur Искать по авторуВ закладки on 28-Янв-03, 21:40  (MSK)
>>Привет!
>>
>>Знаю, что вопрос неоригинален, но тем не менее.
>>
>>PostgreSQL 7.2.2 (Free BSD 4.6) отказывается правильно сортировать русскоязычные записи по Order
>>By. Читал доку, много думал. База создана with encoding='KOI8_R', в postgres.sh
>>проставлено:
>
>В postgres, если я не ошибаюсь, encoding для КОИ8-Р именуется KOI8
>Попробуй сказать psql -l :)

Sorry, не дочитал тред до конца :(
Если у тебя не работает сортировка в shell, дальнейшие ексерсизы бесполезны -
чини системную локаль и потом initdb -E KOI8 :)

  Рекомендовать в FAQ | Cообщить модератору | Наверх

11. "RE: Postgres ORDER BY (наболевшее)"
Сообщение от Alex Ilinski emailИскать по авторуВ закладки on 29-Янв-03, 11:46  (MSK)
>Sorry, не дочитал тред до конца :(
>Если у тебя не работает сортировка в shell, дальнейшие ексерсизы >бесполезны - чини системную локаль и потом initdb -E KOI8 :)

Сортировка в шелле, как я упоминал выше :), работает великолепно.

А я ведь действительно не делал initdb -E KOI8. И в связи с этим вопрос - убъет это уже имеющиеся базы или нет?

Потому что, кажется, больше особо ничего и не сделать :)


  Рекомендовать в FAQ | Cообщить модератору | Наверх

10. "RE: Postgres ORDER BY (наболевшее)"
Сообщение от uldus Искать по авторуВ закладки on 29-Янв-03, 10:47  (MSK)
>>PostgreSQL 7.2.2 (Free BSD 4.6) отказывается правильно сортировать русскоязычные записи по Order

И не будет. PosgreSQL был неправильно установлен. При установке "initdb -E KOI8 -D /usr/local/pgsql/data" обязательно должен быть запущен при активной русской локали (export LANG=ru_RU.KOI8-R).

  Рекомендовать в FAQ | Cообщить модератору | Наверх


Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру