データベース

9. データベースの内容を壊さずにレイアウトを変更するには?

次の手順でデータベース(物理ファイル)のレイアウトを変更することができる。

  • DSPFD MYLIB/MYFILE OUTPUT(*PRINT)で属性を印刷しておく
  • CRTDUPOBJ MYFILE FROM(MYLIB) OBJTYPE(*FILE) TOLIB(QTEMP) DATA(*YES)

    でデータベースを QTEMP へ BACKUP する。

  • DSPDBR MYLIB/MYFILE OUTPUT(*PRINT) で 従属する論理ファイルを印刷出力しておく。
  • DLTF で 従属する論理ファイルを削除する。
  • DLTF で 元の物理ファイルも削除する。
  • CRTSRCPF で新しいソースに基づく物理ファイルを作成する。
  • CPYF FROMFILE(QTEMP/MYFILE) TOFILE(MYLIB/MYFILE) MBROPT(*REPLACE)

    FMTOPT(*MAP *DROP)
    によって QTEMP の BACKUP からデータを復元する。

  • 元の従属論理ファイルすべてを CRTLF によって作成する。

なお PANEL-WORKER の 「物理ファイルの様式変更」(CHGFMT)は 上記のすべての

作業を連続して自動的に行なってくれる。