![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| maxlab |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 148 Регистрация: 22.11.2006 Репутация: нет Всего: нет |
Здравствуйте!
Help! Не пойму почему так... то ли ошибка в Postgres -JDBC-driver... то ли в моем ДНК столкнулся с такой ситуацией. Есть запрос вида
в тестовой таблице есть строки, в поле name которых встречаются ВПЗ-23. В случае когда таблица находится на Postgres сервере Windows платформы - запрос отрабатывается безупречно. Поисковый образ "ВПЗ","ВП","ВПЗ-" и тд. Если на Linux платформе... затыкается на букве З(зе). Например ВП - есть результат ВПЗ - нет результата ВПЗ- -есть результат на обоих платформах версия 8.1.5 локаль С кодировка UNICODE (utf-8) Windows платформа - w2003 server Linux платформа Mandriva 2006 PowerPack+ (2.6.12 kernel) Железо идентичное. Как победить? --------------------
Удивительное рядом... но оно запрещено! |
|||
|
||||
| Бонифаций |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 827 Регистрация: 15.9.2005 Где: Brisbane Репутация: 1 Всего: 40 |
а через psql этот запрос нормально отрабатывается с линукса?
-------------------- Бонифаций. |
|||
|
||||
| tux |
|
|||
![]() Летатель ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1853 Регистрация: 10.2.2005 Где: msk.ru Репутация: 31 Всего: 132 |
В Linux PostgreSQL использует для работы со строками текущую локаль (в Windows вероятно тоже). Попробуй поставить ru_RU.UTF8. Информация с достоверностью процентов 70, не совсем уверен. В свое время была такая проблема, до конца не разобрался.
|
|||
|
||||
| val_vp |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 37 Регистрация: 15.11.2006 Где: Днепродзержинск Репутация: нет Всего: нет |
hi, поробуй экранировать одиночные кавычки
|
|||
|
||||
| val_vp |
|
||||
![]() Новичок Профиль Группа: Участник Сообщений: 37 Регистрация: 15.11.2006 Где: Днепродзержинск Репутация: нет Всего: нет |
Или вот еще - попробуй в свойствах соединения задавать кодировку
props.setProperty("encoding","KOI8-R"); я токо что сделал тоже самое и все работает - кодировка Базы данных koi8 ASPlinux 11 - локаль koi8-r к предыдущему своему посту - без экрана кавычек ничего не получилось вот стенд postgresql-server-8.0.6 $ psql exam_engine
ВПЗ-01 | ВПЗ | 222 --- проверка - вывод успешный
$ ~vp/jdk1.5.0_08/bin/java -cp ~vp/jpr/postgresql-8.0-317.jdbc3.jar:. DBConnect Вот такой вывод ВПЗ-01 ВПЗ другие локали не пробовал |
||||
|
|||||
| tux |
|
|||
![]() Летатель ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1853 Регистрация: 10.2.2005 Где: msk.ru Репутация: 31 Всего: 132 |
val_vp, попробуй ради эксперимента проделать тоже самое с базой в UNICODE. Интересно, это только у меня такие проблемы были или нет.
|
|||
|
||||
| val_vp |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 37 Регистрация: 15.11.2006 Где: Днепродзержинск Репутация: нет Всего: нет |
tux, у меня в юникоде тоже ни хэ не выводит че-то
может виноват postgres - у меня rpm-ка может ее без уникода собрали |
|||
|
||||
| tux |
|
|||
![]() Летатель ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1853 Регистрация: 10.2.2005 Где: msk.ru Репутация: 31 Всего: 132 |
Вряд ли. Я и из пакетов ставил (в Debian) и сам собирал, результат один. В общем надо разбираться, в документации у них об этом ни слова. Добавлено @ 14:25 Как раз хотелось уйти от базы в KOI8 (набора символов было недостаточно), но без смены локали ничего не вышло. Что-то здесь все-таки не так. |
|||
|
||||
| maxlab |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 148 Регистрация: 22.11.2006 Репутация: нет Всего: нет |
о... тут уже бурное обсуждение
в кои8 у меня тоже заработало... но нужен уникод работает без экранов
Может stompedo(гносеолог) подскажет... Это сообщение отредактировал(а) maxlab - 7.2.2007, 14:58 --------------------
Удивительное рядом... но оно запрещено! |
|||
|
||||
| val_vp |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 37 Регистрация: 15.11.2006 Где: Днепродзержинск Репутация: нет Всего: нет |
а вот что интересно у maxlab, че-то исчет и даже выводит пусть и не все, а у меня ничего не выводит
а данные в таблицу кто заносит (psql или иной клиет )? я честно когда юникодную кодировку задал базе мог при вводе через psql запущенный в Kosole с выставленным юникодом че-то не так ввести. |
|||
|
||||
| maxlab |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 148 Регистрация: 22.11.2006 Репутация: нет Всего: нет |
Данные заносил Java клиент. Точнее, сначала я из 1С в XML формате выгрузил справочник Номенклатуры, а затем через DOM залил в postgres --------------------
Удивительное рядом... но оно запрещено! |
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |