如何在IBM i中分析从DSPJRN记录的数据库文件中提取的数据? 使用命令DSPJRN从日志中提取的输出由元数据和本机格式的数据块(文本和二进制数据流)组成。即使可以提取一些信息,我想也有一些规则可以读取它们,但是这是出于我的知识。尚未在文档中看到信息。 有人在处理这些数据吗?
答案 0 :(得分:2)
元数据很容易,因为它在标准列中。
问题在于可变长度条目特定数据。
假设文件中没有可为空的列并且日志配置为不最小化数据,则基本知识并不难处理。然后,您可以简单地使用元数据列+日记表中的列来构建表,然后将数据复制到该表中;像这样:
DSPJRN JRN(MYJRN) FILE((MYPF)) ENTTYP(*RCD) OUTPUT(*OUTFILE) OUTFILFMT(*TYPE1) OUTFILE(JRNOUT) ENTDTALEN(*CALC)
CREATE TABLE MYJRNDATA as (SELECT <meta columns>,<PF columns> FROM JRNOUT, MYPF) with no data
CPYF FROMFILE(JRNOUT) TOFILE(MYJRNDATA) FMTOPT(*NOCHK)
将日记数据复制到其中。超出基础知识会变得很复杂。
您可以使用一些商业工具,我使用Prodata DBU实用工具中的DBUJRN命令。
至少还有一个开源工具Export Journal Entries,如果我想自己动手,它将是我的起点。