Записи журнала SQL DB2 непосредственно в iSeries
Некоторое время назад я столкнулся с оператором SQL, который можно использовать в iSeries/DB2 для извлечения данных непосредственно из журналов баз данных. Он работал без необходимости использования DSPJRN и т. Д. Он вызывал хранимую процедуру, и результаты возвращались непосредственно в сеанс SQL. К сожалению, с тех пор я потерял информацию.
Кто-нибудь знает имя хранимой процедуры и как написать оператор SQL?
3 ответа
Нашел это. Он работает через пользовательскую табличную функцию UDTF, предоставляемую IBM.
Формат следующий. Требуются только первые 2 параметра. Об этом есть достойный блог: http://ibmsystemsmag.blogs.com/i_can/2010/11/
выберите * из таблицы (Display_Journal(
'journLib', 'Journal', - Библиотека журнала и имя -
'receiveLib', 'Receiver', - Библиотека приемника и имя -
CAST(пусто как TIMESTAMP), - Начальная временная метка) -
CAST(null как DECIMAL(21,0)), - Начальный порядковый номер - '', - Коды журнала - '', - Записи журнала - '', '', - Библиотека объектов, Имя объекта - '', '', - Тип объекта, Член объекта - '', - Пользователь - '', - Работа - '' - Программа -
)) как х
Это не совсем то, что вы описываете, но бесплатная утилита Tools / 400 EXPJRNE может быть вызвана как хранимая процедура или может быть обернута в пользовательскую хранимую процедуру, которая также будет возвращать набор результатов.
Вы можете создать хранимую процедуру или функцию с помощью некоторого кода-обертки для вызова API получения записей журнала (QjoRetrieveJournalEntries)