参照整合性の概要
参照整合性は、関連テーブルの行の間のリレーションシップが有効であることを保証し、関連するデータを誤って削除したり変更したりしないようにするための、規則の体系です。
手順
次の条件がすべて満たされている場合は、参照整合性を設定できます。
主テーブルの対応する列が主キーである、または UNIQUE 制約を設定されている。
外部キー テーブルの関連する列に、同じデータ型とサイズが設定されている。
参照整合性が適用されている場合は、次の規則に従う必要があります。
関連テーブルの主キーに存在していない値は、関連テーブルの外部キー列に入力できません。 ただし、外部キー列に null 値を入力することはできます。 たとえば、employee テーブルに存在しない従業員に仕事を割り当てることはできませんが、employee テーブルの job_id 列に null 値を入力することで、従業員に仕事が割り当てられていないことを示すことはできます。
主キー テーブルの行に対応する行が関連テーブルに存在する場合は、主キー テーブルからその行を削除できません。 たとえば、jobs テーブルのある行で示される仕事に割り当てられている従業員が employee テーブルに存在する場合は、jobs テーブルからその行を削除できません。
主キー テーブルの行に関連付けられた行がある場合は、主キーの値を変更できません。 たとえば、jobs テーブルの行の job_id 値は、employee テーブルの行に同じ job_id を持つ従業員がいる場合は、変更できません。