ファイル定義を変更した場合のデータの取り扱い

ファイルにデータを格納した後、そのファイル定義を変更するとどうなるでしょうか。コンパイルの際、データをいったん保存して読み込み直す旨を指示できるようになっています。できるだけデータを無効にすることなく、新しい定義に従って扱えるようにするための措置です。

ファイル作成の際に、テーブルをいったん削除してから生成し直す場合、テーブル・データの保管オプションを使って、既存データのバックアップを取っておくことができます。このオプションを使用すると、すべての既存データは、X_LANSA_ppp(pppは区画識別子)区画ディレクトリのffffffff.DAT(ffffffffはテーブル名)という名前のファイルに区切り文字付きASCII形式で保管されます。 

このデータは、テーブル・データの復元コマンドで、新しいテーブルに復元できます。ただし、状況によっては、完全に復元できない場合があります。例えばあるフィールドを英数字型からパック形式の数値型に変更した場合、型が合わないので復元できません。

大量のデータが格納されたファイルの定義を大幅に変更する場合、データを読み込み直すために専用のファンクションを用意する必要があるかも知れません。この場合はテーブル・データの保管のみ実行しておき、コンパイルが終了してから、独自に用意したファンクションを使って復元してください。

次のトピックも参照してください。

LANSA テクニカル リファレンスガイド』の「ファイル コンパイル オプション