Гость
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / перестал работать регистронезависимый запрос / 9 сообщений из 9, страница 1 из 1
13.04.2021, 03:00
    #40061876
trom
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перестал работать регистронезависимый запрос
База данных с кодировкой UTF8
PostgreSQL 9.2.24
Записи все на русском

После переноса со старого сервера, перестал работать регистронезависимый запрос

SELECT * FROM produckts where name ilike 'ма%';

В базе все идет с большой буквы и такой запрос выдает 0 строк

пробовал так же с
SELECT * FROM produckts where LOWER(name) ilike 'ма%';

в чем проблема? на предыдущем сервере работало, сейчас работает только если первая буква заглавная передается прямо в запросе
...
Рейтинг: 0 / 0
13.04.2021, 09:00
    #40061919
Maxim Boguk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перестал работать регистронезависимый запрос
trom,

сделайте на новом сервере
select LOWER('Ма');
и покажите результат

и покажите что \l+ по вашей базе дает на новом сервере (и если есть - на старом)


--
Maxim Boguk
лучшая поддержка PostgreSQL: dataegret.ru
...
Рейтинг: 0 / 0
14.04.2021, 06:47
    #40062271
trom
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перестал работать регистронезависимый запрос
Maxim Boguk,

на новом сервере запрос SELECT LOWER('Ма') FROM produckts; дает


lower
Ма
Ма
Ма


на старом сервере запрос дает

lower
ма
ма
ма
...
Рейтинг: 0 / 0
14.04.2021, 11:23
    #40062338
Maxim Boguk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перестал работать регистронезависимый запрос
trom,

Кодировка в новой базе неверно настроена.
Как именно неверно будет понятно после того как вы \l+ результаты с обоих серверов покажите.
Ну или сами посмотрите какой encoding / collate / ctype стоит

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
SELECT d.datname as "Name",
       pg_catalog.pg_get_userbyid(d.datdba) as "Owner",
       pg_catalog.pg_encoding_to_char(d.encoding) as "Encoding",
       d.datcollate as "Collate",
       d.datctype as "Ctype",
       pg_catalog.array_to_string(d.datacl, E'\n') AS "Access privileges",
       CASE WHEN pg_catalog.has_database_privilege(d.datname, 'CONNECT')
            THEN pg_catalog.pg_size_pretty(pg_catalog.pg_database_size(d.datname))
            ELSE 'No Access'
       END as "Size",
       t.spcname as "Tablespace",
       pg_catalog.shobj_description(d.oid, 'pg_database') as "Description"
FROM pg_catalog.pg_database d
  JOIN pg_catalog.pg_tablespace t on d.dattablespace = t.oid
ORDER BY 1;





--
Maxim Boguk
лучшая поддержка PostgreSQL: dataegret.ru
...
Рейтинг: 0 / 0
15.04.2021, 04:36
    #40062634
trom
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перестал работать регистронезависимый запрос
Maxim Boguk,
это на новом сервере где проблема, БД где вся база называется cal
https://c2n.me/4bHlcwd

как исправить кодировку на работающей базе?
...
Рейтинг: 0 / 0
15.04.2021, 10:37
    #40062687
Maxim Boguk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перестал работать регистронезависимый запрос
trom
Maxim Boguk,
это на новом сервере где проблема, БД где вся база называется cal
https://c2n.me/4bHlcwd

как исправить кодировку на работающей базе?


1)вы бы текстом такие вещи что ли присылали... я обычно не открываю случайные url.

2)НИКАК (во всяком случае на вашем уровне знаний)... только dump/restore или slony/logical на новую базу

Если хотите приключений с риском убить данные то можете попробовать почитать вот этот тред
https://www.postgresql.org/message-id/flat/a2a8115b-51d2-a931-5c1e-55df2a061758@mail.ru
но приключений там собрать можно преизрядно....

--
Maxim Boguk
лучшая поддержка PostgreSQL: dataegret.ru
...
Рейтинг: 0 / 0
15.04.2021, 15:05
    #40062779
trom
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перестал работать регистронезависимый запрос
Maxim Boguk,

Если делать новую базу, то какую именно ставить кодировку итд чтобы было все правильно?
...
Рейтинг: 0 / 0
15.04.2021, 21:40
    #40062872
Maxim Boguk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перестал работать регистронезависимый запрос
trom
Maxim Boguk,

Если делать новую базу, то какую именно ставить кодировку итд чтобы было все правильно?



Код: plaintext
1.
2.
3.
4.
5.
                                        List of databases
     Name      |  Encoding |   Collate   |    Ctype   
---------------+-----------+-------------+------------
 somedb        |  UTF8     | ru_RU.utf8  | ru_RU.utf8 



--
Maxim Boguk
лучшая поддержка PostgreSQL: dataegret.ru
...
Рейтинг: 0 / 0
17.04.2021, 14:50
    #40063308
trom
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
перестал работать регистронезависимый запрос
Maxim Boguk,

помогло спасибо!
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / перестал работать регистронезависимый запрос / 9 сообщений из 9, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]