Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Ошибка SQL0332N при компиляции SP (SQL PL, DB2 v9.1 z/OS) / 5 сообщений из 5, страница 1 из 1
03.03.2011, 16:06
    #37147155
s390
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка SQL0332N при компиляции SP (SQL PL, DB2 v9.1 z/OS)
Добрый день!
Бьюсь уже вторые сутки со следующий ошибкой (пример упрощен до предела, но реальный).
Есть две БД в DB2 z/OS v9.1 на двух разных хостах. БД созданы как UNICODE. Есть в них таблица tbl_name:
CREATE TABLE tbl_name (
seqno INTEGER NOT NULL PRIMARY KEY,
email_msg DBCLOB(1 М)
) IN DATABASE db1
CCSID UNICODE
@@
Тип DBCLOB так как в исходной таблице было NCLOB и IBM-овский манула по переносу с ORACLE на DB2 рекомендовал DBCLOB.

Есть хранимая процедура
CREATE PROCEDURE proc_name(
IN p_request_id INTEGER
,IN p_reply VARCHAR(32000) CCSID UNICODE
)
VERSION V2_3
PACKAGE OWNER IBMUSER
VALIDATE BIND
PARAMETER CCSID UNICODE
APPLICATION ENCODING SCHEME UNICODE
SQL PATH IBMUSER
QUALIFIER IBMUSER
LANGUAGE SQL
P1: BEGIN
UPDATE tbl_name t
SET t.email_msg = DBCLOB(p_reply)
WHERE t.seqno = p_request_id;
END P1
@@

Компилируем у себя - все нормально. Проверяем на выполнение - все нормально.
Отправляем заказчику и получаем у него на компиляции:
CHARACTER CONVERSION BETWEEN CCSID 65534 TO 1200 REQUESTED BY DSNXOBFC
IS NOT SUPPORTED. SQLCODE=-332, SQLSTATE=57017, DRIVER=3.58.81

Да, доступа на хост заказчика нет. Самой дурное что в прошлом году эта же процедура там компилировалась, сейчас внесли изм. - отправили - ошибка. Отправляем старый вариант - все равно ошибка.
...
Рейтинг: 0 / 0
03.03.2011, 17:45
    #37147468
A.Panskikh
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка SQL0332N при компиляции SP (SQL PL, DB2 v9.1 z/OS)
s390,

а точно базы одинаково созданы? Может TERRITORY or COLLATE опции различны?
Честно, я мало разбирался с особенностями юникодных кодировок, в доке есть специальный раздел
"Unicode implementation in DB2 Database".

Andy
...
Рейтинг: 0 / 0
04.03.2011, 12:04
    #37148646
s390
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка SQL0332N при компиляции SP (SQL PL, DB2 v9.1 z/OS)
А нету их у нас, это DB2 для z/OS. Собственно только CCSID с ASCII / EBCDIC / UNICODE на выбор. Клянутся что UNICODE.
...
Рейтинг: 0 / 0
04.03.2011, 14:02
    #37149011
Ошибка SQL0332N при компиляции SP (SQL PL, DB2 v9.1 z/OS)
s390,

1. Запросите задание DSNTIJUZ, которым генерировали модуль параметров для этой подсистемы, или же просто список параметров (DSNZPARM) этой подсистемы. сравните со своими. В первую очередь сравните список кодировок для подсистемы.

2. Запросите вывод системной команды D UNI,ALL у них и у вас, проверьте что есть необходимые пары перекодировок.

3. Попробуйте для теста убрать из хранимой все объявления (CCSID UNICODE, PARAMETER CCSID UNICODE, APPLICATION ENCODING SCHEME UNICODE. Потом по одному добавлять. Насколько помнится, если указан PARAMETER CCSID UNICODE, то указывать CCSID UNICODE у конкретного параметра не нужно.

4. Проверьте значение LC_CTYPE. Это можно сделать запросом.
Код: plaintext
SELECT CURRENT LOCALE LC_CTYPE FROM SYSIBM.SYSDUMMY1
...
Рейтинг: 0 / 0
05.03.2011, 16:02
    #37151187
ппм
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка SQL0332N при компиляции SP (SQL PL, DB2 v9.1 z/OS)
Евгений Хабаров2. Запросите вывод системной команды D UNI,ALL у них и у вас, проверьте что есть необходимые пары перекодировок.

что традиционно напрягает, так отсутсвие перекодировки между 878 и 1025
...
Рейтинг: 0 / 0
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Ошибка SQL0332N при компиляции SP (SQL PL, DB2 v9.1 z/OS) / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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