Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Ошибка при неявном действии системы типа "5" / 4 сообщений из 4, страница 1 из 1
12.02.2010, 07:17
    #36464695
BuryCommoner
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка при неявном действии системы типа "5"
DB2 9.7. Многие поля в запросе из процедуры завернул в функции u.ltrim_zeros(CHAR(...)), которые просто обрезают левые нули в текстовом представлении DECIMAL. После этого при вызове процедуры появляется ошибка:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
SQL0727N  Ошибка при неявном действии системы типа "5". Код ошибки SQLCODE 
"-101", состояние SQLSTATE "54001", элементы сообщения "".  SQLSTATE= 56098 

SQL0727N  Ошибка при неявном действии системы типа "5". Код ошибки SQLCODE "-101", состояние SQLSTATE "54001", элементы сообщения "                                                         ".

Объяснение: 

При обработке оператора или команды менеджер баз данных выполнял
необходимые дополнительные действия. При этой обработке произошла
ошибка. "<тип-действия>" сообщает о производимом действии:

 1         
         неявное повторное связывание пакета
 2         
         неявная подготовка кэшируемого динамического оператора SQL
 3         
         неявная перепроверка объекта
 4         
         Этот код возврата зарезервирован для использования DB2.
 5         
         инкрементное связывание статического оператора SQL, который не
         был связан во время связывания пакета
...

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

---------------------------------------------------------
IS NULL OR NOT IS NULL
...
Рейтинг: 0 / 0
12.02.2010, 10:30
    #36465010
Mark Barinstein
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка при неявном действии системы типа "5"
BuryCommoner,

stmtheap в два раза увеличте.

А что, в 9.7 у вас
values char(dec(123.45), 10, 2)
нули лидирующие выводит?
...
Рейтинг: 0 / 0
12.02.2010, 10:33
    #36465018
Mark Barinstein
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка при неявном действии системы типа "5"
Mark BarinsteinА что, в 9.7 у вас
values char(dec(123.45), 10, 2)
нули лидирующие выводит?Дополнение:
Если в базе не используется Oracel-compatibility, то используйте функцию to_char:
values to_char(dec(123.45), 10, 2)
...
Рейтинг: 0 / 0
12.02.2010, 14:36
    #36465968
BuryCommoner
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка при неявном действии системы типа "5"
Mark Barinstein, спасибо. Размер STMTHEAP поднял с 2048 до 4096.
TO_CHAR() действительно отлично подходит. CHAR() же выдерживает длину нулями.
Хорошо, когда велосипедостроение не требуется.

---------------------------------------------------------
IS NULL OR NOT IS NULL
...
Рейтинг: 0 / 0
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Ошибка при неявном действии системы типа "5" / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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