データベースの参照整合性

アプリケーション・データベースを設計する上で、「参照整合性」への配慮は欠かせません。これは、あるデータから別のデータへの参照関係が損なわれないよう保証する、データベースの機能です。ファイル間のデータ参照関係は、いかなる場合でも維持しなければなりません。例えば人事管理アプリケーション用のデータベースで、部課ファイルの各レコードには、その部課が所属する部門コードを設定する必要があります。この部門コードは部門ファイルに登録されているものでなければなりません。この関係が損なわれた場合、データベース全体の参照整合性が崩れたことになります。

参照整合性を保つため、ファイル間に次のような規則を設けてあります。

1.  他のファイルから参照されているデータは削除できない。
あるレコードを削除するためには、関連ファイル内に、これを参照しているレコードがあってはならない、とする規則です。

2.  不完全なデータは追加できない。
データを追加するためには、関連ファイル内に、参照先のレコードが存在しなければならない、とする規則です。

この2つの規則は、ファイル間の依存関係を表します。参照整合性には正逆の2方向があり、「前方参照整合性」、「後方参照整合性」などと呼ぶこともあります。考え方はアクセス経路の場合と同様です。ファイル1からファイル2に対する関係があれば、逆にファイル2からもファイル1に対する関係があります。参照整合性規則をデータベースに組み込むためには、適用業務の内容を把握しておく必要があります。

LANSA では、参照整合性をファイル単位の妥当性規則 (参照制約) の形でリポジトリに定義しているので、特定のデータベースには依存しません。これはさまざまなプラットフォーム上でアプリケーションを稼動させる上で有利でしょう。

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

参照整合性の例