powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Query в котором where содержит UTF-8 коды не возвращает строк
5 сообщений из 5, страница 1 из 1
Query в котором where содержит UTF-8 коды не возвращает строк
    #34368891
Alexander Mushnikov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Hi уважаемый all.

Столкнулся с очередной проблемой под виндовым клиентом. база под линуксом, в codepage=1208 (UTF-8).
В своем приложении (tcp/ip через OLE IBM2 Provider driver) могу без проблем читать UTF-8 строки и сохранять их обратно в базе.
Но, при попытке выполнить из приложения запрос вида:
select user_name from pr_user where user_name like '%Пятачок%'
получаю пустой resultset, т.е. ни одной строки (хотя таковые имеются).
тот-же самый запрос из под приложения на java (jdbc) - то-же самое!

в консоле под линуксом из утилиты db2 - все работает без проблем, и честно возвращает 2 строки.
в чем может быть проблема?
...
Рейтинг: 0 / 0
Query в котором where содержит UTF-8 коды не возвращает строк
    #34371852
Могу только предложить пример программы для проверки.
Во вложении архив с исходным текстом программы на java, скомпилированный класс и SQL на создание таблицы и вставки записей.

Исходник компилировать так: javac -encoding Cp1251 exec_sql.java
Исполнять так: java exec_sql <db2url> <user> <password>, естественно в CLASSPATH должны присутствовать классы "DB2 JDBC UNiversal Driver"
Ну например:
java exec_sql jdbc:db2:UTFDB test test12 или
java exec_sql jdbc:db2://127.0.0.1:50000/UTFDB test test12

Если в СУБД данные лежат в правильном виде, то должно вернуться несколько записей.

Кроме того, можно попробовать аналогично вставить несколько записей (через JDBC) и посмотреть как они будут выглядеть в консоли (CLI) и в OLE-приложении.

Сдается мне, что все-таки что-то с кодировками не так.

Да, Java-программу желательно выполнить и на сервере и на клиенте и сравнить результат.

Через Type4-соединение результат должен быть идентичен.
Через Type2-соединение по идее то же, но тут уже могут влиять настройки клиента.
...
Рейтинг: 0 / 0
Query в котором where содержит UTF-8 коды не возвращает строк
    #34372477
Alexander Mushnikov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сорри Евгений, а где-же вложение? с описанной прогой?
может каким-то образом не попало в форум? киньте пожалуйста мылом: alexmush@ukr.net
С уважением, Александр.
...
Рейтинг: 0 / 0
Query в котором where содержит UTF-8 коды не возвращает строк
    #34374269
Пардон, почему-то не присоединилось.
Посылаю еще раз.
...
Рейтинг: 0 / 0
Query в котором where содержит UTF-8 коды не возвращает строк
    #34430938
Alexander Mushnikov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Евгений ХабаровПардон, почему-то не присоединилось.
Посылаю еще раз.

Спасибо Евгений. слил. попробую.
вообще-то решили базу пересоздать в UTF-16 - думаю после этого проблема должна уйти...
но сервер не у меня, жду когда базу переделают.

Успехов.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Query в котором where содержит UTF-8 коды не возвращает строк
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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