テーブルにデータを格納した後、そのテーブル定義を変更するとどうなるでしょうか。コンパイルの際、データをいったん保存して読み込み直す旨を指示できるようになっています。できるだけデータを無効にすることなく、新しい定義に従って扱えるようにするための措置です。
テーブル作成の際に、テーブルをいったん削除してから生成し直す場合、テーブル・データの保管オプションを使って、既存データのバックアップを取っておくことができます。このオプションを使用すると、すべての既存データは、X_LANSA_ppp(pppは区画識別子)区画ディレクトリのffffffff.DAT(ffffffffはテーブル名)という名前のテーブルに区切り文字付きASCII形式で保管されます。
このデータは、テーブル・データの復元コマンドで、新しいテーブルに復元できます。ただし、状況によっては、完全に復元できない場合があります。例えばある列を英数字型からパック形式の数値型に変更した場合、型が合わないので復元できません。
大量のデータが格納されたテーブルの定義を大幅に変更する場合、データを再インポートするために専用のファンクションを用意する必要があるかもしれません。この場合はテーブル・データの保管のみ実行しておき、コンパイルが終了してから、独自に用意したファンクションを使って復元してください。
次のトピックも参照してください。
『LANSA テクニカル リファレンスガイド』の「テーブル コンパイル オプション」