参照整合性
別名:参照制約
【英】Referential Integrity
参照整合性とは、リレーショナルデータベースのデータ整合性を保つための機能のことである。
参照整合性によって、テーブル(表)の列と列との依存関係を定義する。この依存関係において、参照する列を参照列(外部キー)、参照される列を被参照列と呼ぶ。参照列(外部キー)の値は、被参照列が持つ値に含まれるかNULL値でなければならない。
被参照列が更新、および、削除される場合、参照列を連鎖的に更新、および、削除する指定と、被参照列の更新、および、削除を禁止する指定がある。これによって、テーブルの行を削除、および、更新することで、その行を参照していた別の列の値がなくなってしまうようなデータ矛盾を防ぐことができる。
参照リンク
SQL Foreign Key - (SQL Tutorial)
参照整合性
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2023/01/09 05:27 UTC 版)
この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。2023年1月) ( |
参照整合性 (さんしょうせいごうせい、英: referential integrity) は、コンピュータの関係データベースの関係モデルにおいて2つの関連しあった関係変数 (表、テーブル) の間の一貫性 (データ完全性) をいう。 参照整合性は、多くの場合、主キーもしくは主キー以外の候補キーと、外部キーの、組み合わせにより、強制適用される。 参照整合性が強制適用されると、外部キーが宣言された関係変数の外部キーを構成する属性 (列、カラム) の値は、その関係変数の親となる関係変数の主キーの値もしくは主キー以外の候補キーの値として存在しなければならない。 例えば、別の関係変数の外部キーにより参照されている組 (タプル、行) を削除することは、参照整合性を破壊してしまうことになるため、関係データベース管理システム (RDBMS) は参照整合性を保つべく通常は削除の実行を阻止する。 例外として、参照している外部キーを含む組を連鎖して削除することを伴って、削除を実行できる場合があり、この場合は参照整合性が保たれる。 外部キーにより参照されている組を削除することができるかどうかは、データ定義言語 (DDL) による参照整合性制約の定義により定義される。
例
社員データベースは社員が属する部署の情報を保持している。 社員関係変数 (社員テーブル) の「部署番号」属性は外部キーとして宣言されており、部署関係変数の主キーとして宣言されている「部署番号」属性を参照している。 ある部署で現に勤務している社員が存在する場合、その部署の情報を部署関係変数から削除することは、参照整合性を破壊することになるため、関係データベース管理システム (RDBMS) により削除の実行は阻止されるであろう (参照整合性制約が連鎖削除を許可していない場合) 。
関連項目
- 参照整合性のページへのリンク