参照整合性は、プライマリ・キーおよび外部キーを使用して調整されます。
参照制約を使用すると、あるテーブルに挿入するデータと一致するデータが別のテーブルに必ず存在するようにすることができます。たとえば pubs2 データベースでは、本の売り上げを記録する salesdetail テーブルに挿入したローで、titles テーブルの有効な title_id を必要とします。現在、pubs2 では、トリガを使用してこの参照整合性を実現しています。一方、titles テーブルの title_id カラムを参照する参照制約を salesdetail テーブルで定義すると、同様の参照整合性を実現できます。
参照制約では、以下の 2 つのテーブルを必要とします。
データ挿入を行う参照元テーブル。このテーブルには、外部キーとして機能する 1 つ以上のカラムが含まれる。
挿入がチェックされる参照先テーブル。このテーブルには、プライマリ・キーとして機能する 1 つ以上のカラムが含まれる。
参照元テーブルにデータを挿入するときは、外部キー・カラムの値と参照先テーブルのプライマリ・キー・カラムの値を一致させる必要があります。参照先テーブルまたは参照元テーブルで参照制約を定義できます。
参照先テーブルの references パーミッションを持つデータベース所有者またはテーブル所有者だけが参照制約を作成できます。
参照制約を作成するには