令和5年秋期試験問題 午前問27
問27解説へ
関係モデルにおける外部キーの説明として,適切なものはどれか。
- ある関係の候補キーを参照する属性,又は属性の組
- 主キー以外で,タプルを一意に識別できる属性,又は属性の組
- タプルを一意に識別できる属性,又は属性の組の集合のうち極小のもの
- タプルを一意に識別できる属性,又は属性の組を含む集合
広告
解説
関係モデルの用語と関係データベースの要素は、次のように対応します。関係モデルでは正規化の過程で表を複数に分割しますが、分割の際に2つの表に同じ属性を持たせることで表同士の関連付けを行います。共通する属性のうち、参照される側の属性が主キー(primary key)、参照する側の属性が外部キー(foreign key)となります。外部キーは、下図のようにある関係の候補キー(主キー)を参照する役割を持ちます。
したがって「ア」の説明が適切です。
したがって「ア」の説明が適切です。
- 正しい。外部キーの説明です。
- 代理キー(alternate key)の説明です。例えば、従業員表に属性"社員番号"と属性"運転免許証番号"がある場合、どちらも行を一意に識別できるため主キーにすることができます。このような場合、"社員番号"を主キーにすると"運転免許証番号"が代理キーとなります。逆もまたしかりです。
- 候補キー(candidate key)の説明です。主キーの候補となる属性または属性の組なので、候補キーと呼ばれます。例えば、(社員番号,氏名,生年月日)という関係がある場合、"社員番号"が候補キーとなります。
- スーパーキー(super key)の説明です。データベース内の行を一意に識別できるという点は候補キーと同じですが、"極小"という条件を除いたものです。例えば、(社員番号,氏名,生年月日)という関係がある場合、{社員番号, 氏名}や{社員番号,生年月日}の組は行を一意に識別可能ですが、余分な属性を含んでいる(極小ではない)のでスーパーキーとなります。
広告