関係データベース上に実装するエンティティの主キーが複合キーであり、複合キーを構成している属性数が多すぎるので、少なくして扱いしやすくしたい。
この場合の対応として、適切なものはどれか。
ア | 複合キーを構成している属性のうち、エンティティの性格を最もよく表している属性を主キーとし、残りの属性を外部キーにする。 |
イ | 複合キーを構成している属性のうち、エンティティの性格を最もよく表している属性を主キーとし、残りの属性を代理キー(alternate key)にする。 |
ウ | 複合キーを連番などの代用のキー(surrogate key)に置き換え、複合キーを構成している属性を外部キーにする。 |
エ | 複合キーを連番などの代用のキー(surrogate key)に置き換え、複合キーを構成している属性を代理キー(alternate key)にする。 |
答え エ
【解説】
ア | 複合キーすべてが揃って主キーになっているので、一部を外部キーにすることはできません。 |
イ | 複合キーすべてが揃って主キーになっているので、一部を代理キーにすることはできません。 |
ウ | 複合キーを外部キーにすることが可能とは限りません。 |
エ | 複合キーを連番などの代用キーに置き換え、複合キーを代理キーにすることは可能です。 |
【キーワード】
・代用キー
・代理キー