北川 博之著「データベースシステム(オーム社)」を参考に,データベースシステムの知識をまとめます。
超キー・候補キー・主キーの定義
実体集合の中から実体を一意的に識別できる属性,あるいはその組み合わせの集合を超キーと呼びます。超キーのうち極小となるものを候補キー,もしくは単純にキーと呼びます。候補キーのうち,管理上もっとも適しているものを主キーとして選択します。
外部キーの定義
リレーションスキーマ$R_{1}(\cdots,FK,\cdots)$と$R_{2}(PK,\cdots)$が与えられ,$PK$は$R_{2}$の主キーであり,$FK$のドメインと$PK$のドメインは一致するものとします。このとき,$R_{1}$と$R_{2}$のいかなるインスタンス$r_{1}$および$r_{2}$が以下の条件
- $r_{1}$中の任意のタプルがもつ$FK$の値は,それが空値である場合を除き,$r_{2}$中に存在するあるタプルがもつ$PK$の値でなければならない
を満たす場合,$FK$は外部キーと呼ばれます。
関数従属性を用いた超キーの定義
関数従属性を用いると,リレーションスキーマ$RS$において属性集合$X\subseteq RS$が超キーであるとは,
- $X~\rarr~RS$
が成立することとして定義されます。加えて,次の条件
- $X$のいかなる真部分集合$Y$についても$Y~\rarr~RS$は成立しない
が成り立つとき,$X$の極小性が担保されるため,$X$は候補キーになります。
コメント