powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Ошибка CLI0109E при вызове функции с русскими параметрами
11 сообщений из 11, страница 1 из 1
Ошибка CLI0109E при вызове функции с русскими параметрами
    #35458463
Marvin_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вызов db2 процедуры со строковым параметром, в котором используется кириллица приводит к ошибке :

call ONE_SCHEMA.ins_prib_k('PR','657803','A','515151511',5,1100,'20','1',2111,'ЭА717818','864300','242005','100001','13134131','05','1222',' ','ОАО СИНТЕЗ','1900-01-01-00.00.00.000000',0,0,0,0,' ',' ',' ',' ','1900-01-01-00.00.00.000000',0,0,' ',' ',' ',' ',' ',' ',' ',0,' ',0,'0',' ','96969696','2008-07-17-14.42.00.000000',0)

ERROR [22001] [IBM][CLI Driver] CLI0109E Строка усечена справа. SQLSTATE=22001


как бы это решить ?
...
Рейтинг: 0 / 0
Ошибка CLI0109E при вызове функции с русскими параметрами
    #35458492
Marvin_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а, и еще - процедура вызывается через .NET веб сервис, через ODBC

если же процедуру вызвать через клиент - Quest например, всё срабатывает нормально
...
Рейтинг: 0 / 0
Ошибка CLI0109E при вызове функции с русскими параметрами
    #35459052
Victor Metelitsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Смахивает на проблему с кодировкой. В самом деле, судя по тому, что вы написали, обвинить больше нечего. Быть может, оно пытается пропихнуть Unicode (utf-8), когда ожидается Windows-1251, поэтому в случае русского строка оказывается слишком длинной, что и приводит к приведённой выше ошибке.

Но почему у вас используется неправильная кодировка, (мне) сложно понять дистанционно (с .Net не имел дела, с ODBC же проблем не было). Наверное, надо как следует покопаться в настройках подключения - и вашей программы, и клиентского обеспечения DB2.
...
Рейтинг: 0 / 0
Ошибка CLI0109E при вызове функции с русскими параметрами
    #35459274
GVF112GVF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Marvin_ruвызов db2 процедуры со строковым параметром, в котором используется кириллица приводит к ошибке :

call ONE_SCHEMA.ins_prib_k('PR','657803','A','515151511',5,1100,'20','1',2111,'ЭА717818','864300','242005','100001','13134131','05','1222',' ','ОАО СИНТЕЗ','1900-01-01-00.00.00.000000',0,0,0,0,' ',' ',' ',' ','1900-01-01-00.00.00.000000',0,0,' ',' ',' ',' ',' ',' ',' ',0,' ',0,'0',' ','96969696','2008-07-17-14.42.00.000000',0)

ERROR [22001] [IBM][CLI Driver] CLI0109E Строка усечена справа. SQLSTATE=22001


как бы это решить ?

Если вызов идет из консольного приложения - тогда попробуй установить для командной строки
кодовую страницу как в базе (возможно и для ODBC). Если проблема не уйдет, тогда попробуй создать тестовую базу с поддержкой юникод.

С уважением,
Вадим.
...
Рейтинг: 0 / 0
Ошибка CLI0109E при вызове функции с русскими параметрами
    #35459505
mitek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Такая хрень помнится вылезала периодически при работе через ODBC-драйвер с DB2/zOS (у вас не оно случаем ? ). Лечилось подборкой "правильной" версии db2-коннекта.
И почему через ODBC, а не через нативный DB2 .Net Data Provider ?
...
Рейтинг: 0 / 0
Ошибка CLI0109E при вызове функции с русскими параметрами
    #35459756
Marvin_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробовал поменять настройки ODBC - параметр CONNECTCODEPAGE. Не помогло.

Как бы узнать, в какой кодировке на сервер отсылается call ONE_SCHEMA.ins_prib_k(...) из Quest-а или из редактора комманд DB2, что он срабатывает нормально ?


mitekТакая хрень помнится вылезала периодически при работе через ODBC-драйвер с DB2/zOS (у вас не оно случаем ? ). Лечилось подборкой "правильной" версии db2-коннекта.
И почему через ODBC, а не через нативный DB2 .Net Data Provider ?

какая операционная система на db2 сервере пока не известно. Версия db2-коннекта - это версия DB2 .Net Data Provider-а ?

насчет выбора ODBC - оно универсально, DB2 .Net Data Provider - только для дб2
...
Рейтинг: 0 / 0
Ошибка CLI0109E при вызове функции с русскими параметрами
    #35459936
mitek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Marvin_ru
Как бы узнать, в какой кодировке на сервер отсылается call ONE_SCHEMA.ins_prib_k(...) из Quest-а или из редактора комманд DB2, что он срабатывает нормально ?

ODBC-трассировку включить ?

Marvin_ru
какая операционная система на db2 сервере пока не известно. Версия db2-коннекта - это версия DB2 .Net Data Provider-а ?


из СLP соединиться с базой и в приглашении оно вам покажет версию и платформу.
db2-коннект это DB2 Connect Personal (или Enterprise) Edition. С ним соответственно ставятся и ODBC- и JDBC-драйверы и .Net-провайдер

Marvin_ru
насчет выбора ODBC - оно универсально, DB2 .Net Data Provider - только для дб2

ну процедура-то у вас все равно в DB2, так почему бы не попробовать.
...
Рейтинг: 0 / 0
Ошибка CLI0109E при вызове функции с русскими параметрами
    #35463557
Marvin_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
попробовал через DB2 .Net Data Provider

возвращается та же ошибка. Русские буквы раскодируются как то так, что результат не помещается в поле.

Если же помещается, русский выглядит так : 'ОÐ�О СИÐ�ТЕЗ '
...
Рейтинг: 0 / 0
Ошибка CLI0109E при вызове функции с русскими параметрами
    #35463895
Marvin_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вообще, в какой кодировке я бы не посылал кириллицу, она преобразовывается в крякозябры одного и того же типа
...
Рейтинг: 0 / 0
Ошибка CLI0109E при вызове функции с русскими параметрами
    #35510524
Marvin_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
еще один симптом : если из вебсервиса отсылать не вызов процедуры, вставляющей данные в таблицу, а делать непосредственно инсерт, данные на кириллице вставляются правильно

тоесть скорее всего перекодировка в крякозябры происходит в момент передачи данных в процедуру
...
Рейтинг: 0 / 0
Ошибка CLI0109E при вызове функции с русскими параметрами
    #35511902
xz321
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
в db2cli.ini DISABLEUNICODE=1
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Ошибка CLI0109E при вызове функции с русскими параметрами
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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