現在地: Visual LANSA 開発者ガイド > 1. アプリケーション、フィールド、データベース、リポジトリの概要 > 1.6 アプリケーション・データベースの作成 > 再コンパイルの対象
再コンパイルの対象

基本的なルール:

次のような例を考えてみましょう。

ここでテーブル A の物理テーブル定義を変更 (列の追加/削除/属性変更など) した場合、テーブル A およびそれをもとにしたインデックス、OAM を生成し直さなければなりません。

しかしこのとき、テーブル B の OAM を生成し直す必要はあるでしょうか。

テーブル B の妥当性規則は、テーブル A も参照するようになっています。社員テーブル (テーブル B) に新しい社員データを追加したとき、その部門コードは DEPTAB テーブル (テーブル A) に登録されているものでなければなりません。したがって PSLMST テーブル (テーブル B) の OAM は、DEPTAB (テーブル B) テーブルを開き、テーブルを検索して妥当性検査を行う必要があります。これは、部門コードがDEPTABテーブルにあるからです。この検査は、DEPTAB テーブルの OAM を呼び出して行うわけではありません。したがって、PSLMST テーブルの OAM も再コンパイルしなければ、実行時に IBM i レベルのチェック・エラーが発生します(このエラーについては『IBM Database Guidelines』を参照)。

データ間の関係モデルを検討すれば、変更による影響範囲を把握する助けになります。妥当性規則の中に変更したテーブルを参照する記述がないか、という点も確認してください。 

バッチ制御を使っている場合もOAMの再コンパイルが必要です。

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

再コンパイルが必要になる条件