| 
 | 
| 
 
PostGres 7.3 и CP1251 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Проблема: На OpenBSD создал базу строчкой вида initdb -E win --lc-collate=ru_RU.CP1251 --lc-ctype=ru_RU.CP1251 -D /var/postgresql/data Не работает функция upper(), хотя с сортировкой все в порядке. Какие параметры нужно указать? ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 28.05.2003, 12:41 | 
  
  
  
   | 
||
| 
 
PostGres 7.3 и CP1251 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  У меня такая же фигня. Где-то прочитал что при подключении нужно устанавливать переменную LANG, но не проверял, врать не буду. Хотя мож чё-то с локалью, у меня и в ПХП upper() и lower() неправильно русские буквы меняют. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 28.05.2003, 12:48 | 
  
  
  
   | 
||
| 
 
PostGres 7.3 и CP1251 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Результат Функции  upper() (да и  других стринговых функций) помимо  всего прочего зависит от параметра -E утилиты createdb. ------------------- Непонимаю зачем использовать локаль базы CP1251 на сервере где основная локаль заведомо KOI8-R??? Например. Делаем inidb без явного указания --lc-collate и --lc-ctype= - обычно локаль к этому времени настроена как должно. initdb прописывает в postgresql.conf такие слова: # # Locale settings # # (initialized by initdb -- may be changed) LC_MESSAGES = 'ru_RU.KOI8-R' LC_MONETARY = 'ru_RU.KOI8-R' LC_NUMERIC = 'ru_RU.KOI8-R' LC_TIME = 'ru_RU.KOI8-R' Замечательно! Теперь cоздаем базу. createdb -E KOI8 mdb2 И все. Данные хранятся в Koi8 - стринговые функции работают "на ура" - клиентские приложения просто говорят в какой кодировке работают ( мои клиенты на Delphi начинают трудовую смену set client_encoding = WIN 8-) ). И все счастливы! ;o) А я по приколу сделала такой финт - createdb -E WIN mdb3 Результаты меня нисколько не удивили : фунцкия upper() стала возвращать результат свойственный функции lower(). И наоборот ! ;) Так что вывод один - Храните Ваши данные в единой кодировке (если параметр -E не указан - поумолчанию SQL_ASCII) ----------------------------------------- OS - FreeBSD 4.3 STABLE. Postgers 7.3 /7.3.2 ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 28.05.2003, 14:26 | 
  
  
  
   | 
||
| 
 
PostGres 7.3 и CP1251 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Результат Функции  upper() (да и  других стринговых функций) помимо  всего прочего зависит от параметра -E утилиты createdb. ------------------- Непонимаю зачем использовать локаль базы CP1251 на сервере где основная локаль заведомо KOI8-R??? Например. Делаем inidb без явного указания --lc-collate и --lc-ctype= - обычно локаль к этому времени настроена как должно. initdb прописывает в postgresql.conf такие слова: # # Locale settings # # (initialized by initdb -- may be changed) LC_MESSAGES = 'ru_RU.KOI8-R' LC_MONETARY = 'ru_RU.KOI8-R' LC_NUMERIC = 'ru_RU.KOI8-R' LC_TIME = 'ru_RU.KOI8-R' Замечательно! Теперь cоздаем базу. createdb -E KOI8 mdb2 И все. Данные хранятся в Koi8 - стринговые функции работают "на ура" - клиентские приложения просто говорят в какой кодировке работают ( мои клиенты на Delphi начинают трудовую смену set client_encoding = WIN 8-) ). И все счастливы! ;o) А я по приколу сделала такой финт - createdb -E WIN mdb3 Результаты меня нисколько не удивили : фунцкия upper() стала возвращать результат свойственный функции lower(). И наоборот ! ;) Так что вывод один - Храните Ваши данные в единой кодировке (если параметр -E не указан - поумолчанию SQL_ASCII) ----------------------------------------- OS - FreeBSD 4.3 STABLE. Postgers 7.3 /7.3.2 ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 28.05.2003, 14:27 | 
  
  
  
   | 
||
| 
 
PostGres 7.3 и CP1251 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Дело в том, что у меня уже есть стопятьсот баз данных, которые все в Win1251. И конвертить как-то... не очень хочется :) И мне казалось, что createdb берет параметр --encoding(если не указан) от initdb, где я его явно указал. Такие вот дела. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 28.05.2003, 14:36 | 
  
  
  
   | 
||
| 
 
PostGres 7.3 и CP1251 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Блин ну и  лагает этот форум..... каашмар (с инетом все ок - канал  дай бог каждому 8)) да и пинг на россию пристойный ) А вот ASP - само по себе фигня полная..... а возможности этого этого форума просто убогие... - например я бы с удовольствием похерил бы ошибочный пост, или отредактил его ан нет. Сорри за оффтоп просто достало малехо. Впрочем мож я неправ - и просто сервак задыхается под наплывом коннектов? ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 28.05.2003, 14:38 | 
  
  
  
   | 
||
| 
 
PostGres 7.3 и CP1251 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Хотя все равно с возможностями у него конечно ен все в порядке :( Вот YaBB рулит. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 28.05.2003, 14:42 | 
  
  
  
   | 
||
| 
 
PostGres 7.3 и CP1251 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Мдас печально - хотя наваять скрипт конвертирования можно  довольно  просто.  Например create -E KOI8 $2 pg_dump -c $1 | win2koi8 | psql $2 dropdb $1 Ну и получив список баз запихнул это дело в цикл. Усе. Пробелы возникнут разве что при наличии BLOB полей (я их маловато юзал так что не подскажу хотя дампить их есстественно можно 8) ). А что касаемо установок createdb.... Похоже что если явно не указывать createdb _копирует_ установку Encoding из template1. У меня Encoding template1 SQL_ASCII. Соотв делая createdb mdb1 получаем базу mdb1 с кодировочкой SQL_ASCII. IMHO все вполне логично. Кстати на эти грабли наступают многие из-за невнимательного RTFM. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 28.05.2003, 15:06 | 
  
  
  
   | 
||
| 
 
PostGres 7.3 и CP1251 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  К счастью это самый FM я много раз R вдоль и поперек. Однако не помогает. Может, локаль крива? Не в курсе, где можно локаль ВИН1251 для Опена выкачать? ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 28.05.2003, 15:32 | 
  
  
  
   | 
||
| 
 
PostGres 7.3 и CP1251 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  К сожалению  никогда не работал с OpenBSD хотя слышал  много лестных  отзывов  Но если бы даже пришлось работать основной локалью была бы конечно KOI8. А что утебя написал Initdb в конце postgresql.conf про локаль? Может он не увидел что у тебя выставлено в шеле? Да и какой же получилась Encode в у template1 -запости вывод комманды psql -c "\l" template1 И все равно удивительно, зачем может понадобиться устанавливать основной локалью cp1251... там где общепринята KOI8? 8_) IMHO это также обосновано как под WIN пытаться все переделать под KOI8 8)) Проще "научить" клиентские проги указывать локаль, в которой они хотят получать данные. Кстати для пользователяв PG вроде можно прописать набор установок переменных типа SET clien_encoding=WIN; SET enable_seqscan=true ; SET log_duration=true; Правда пока что такой необходимости не было как это работает я не вкурсе. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 28.05.2003, 16:05 | 
  
  
  
   | 
||
| 
 
PostGres 7.3 и CP1251 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  По уточненным данным, OpenBSD не поддерживает локали :) ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 04.06.2003, 01:44 | 
  
  
  
   | 
||
| 
 
PostGres 7.3 и CP1251 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  ну подписку найти легко, например тут  http://developer.postgresql.org/mailsub.php может кому и сгодится. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 06.06.2003, 09:01 | 
  
  
  
   | 
||
| 
 
PostGres 7.3 и CP1251 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  У меня как раз developer.postgres и  лежит :) На итальянском зеркале одиноко болтается объява о временных технических сложностях... ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 11.06.2003, 18:13 | 
  
  
  
   | 
||
| 
 
PostGres 7.3 и CP1251 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  "И все равно удивительно, зачем может понадобиться устанавливать основной локалью cp1251... там где общепринята KOI8? 8_)" Для того чтобы иметь в базе 1251-символы, которых нет в koi8, как например туда-обратно кавычки, длинное тире, копирайт, евро,.. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 17.06.2003, 11:02 | 
  
  
  
   | 
||
| 
 
PostGres 7.3 и CP1251 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  А что мешает использовать UTF? Не на OpenBSD, конечно. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 17.06.2003, 11:08 | 
  
  
  
   | 
||
| 
 
PostGres 7.3 и CP1251 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  2 Shweik: >Делаем inidb без явного указания --lc-collate и --lc-ctype= >- обычно локаль к этому времени настроена как должно. >initdb прописывает в postgresql.conf такие слова: ># ># Locale settings ># ># (initialized by initdb -- may be changed) >LC_MESSAGES = 'ru_RU.KOI8-R' >LC_MONETARY = 'ru_RU.KOI8-R' >LC_NUMERIC = 'ru_RU.KOI8-R' >LC_TIME = 'ru_RU.KOI8-R' Ничего подобного. У меня, например, написало: LC_MESSAGES = 'С' LC_MONETARY = 'С' LC_NUMERIC = 'С' LC_TIME = 'С' Сортировка правильная, а upper и lower вообще не работают :(( При попытке прописать koi8 улетела сортировка :(( ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 18.06.2003, 11:11 | 
  
  
  
   | 
||
| 
 
PostGres 7.3 и CP1251 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  mik_s : > Сортировка правильная, а upper и lower вообще не работают :(( Сортировка "правильная", потому что в cp1251 русские буквы вообще говоря по алфавиту расположены. А upper и lower работать и не будут, если ты локаль не настроил. Читай, студент: http://faq.phpclub.net/index.php3?theme=1&level=4&question_id_select=91&chapitre_id_select=27&document_id_select=2 ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 18.06.2003, 12:13 | 
  
  
  
   | 
||
| 
 
PostGres 7.3 и CP1251 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  createdb -E UNICODE dbname upper русские буквы корежит, lower вообще ничего не делает... Есть ли какие-то соображения, как это побороть? ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 07.07.2003, 21:37 | 
  
  
  
   | 
||
| 
 | 

start [/forum/topic.php?fid=53&msg=32175741&tid=2008158]:  | 
    0ms | 
get settings:  | 
    9ms | 
get forum list:  | 
    13ms | 
check forum access:  | 
    4ms | 
check topic access:  | 
    4ms | 
track hit:  | 
    66ms | 
get topic data:  | 
    9ms | 
get forum data:  | 
    3ms | 
get page messages:  | 
    48ms | 
get tp. blocked users:  | 
    1ms | 
| others: | 227ms | 
| total: | 384ms | 

| 0 / 0 | 

    Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
    
    
    «На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
    
    
    ... ля, ля, ля ...