主キーの選択

dummyさん  
(No.1)
ソフトウェア開発技術者 平成19年春期 午前問61
に関して質問です.

主キーの定義として,”テーブル内のレコードを一意的に識別するためのフィールド”
らしいのですが.

なぜ,この問題において,ウは誤りなのでしょうか?

たしかに,解答エで,主キーの定義は満たしていると思います,そして解答ウに関しては
冗長になるとは思いますが,定義は満たしていると思います.

主キーの選択に関して,「主キーは少ない方がいい」や「関数従属は許さない」などの
ルールはあるのでしょうか?
2015.02.01 16:54
げねごすさん 
(No.2)
選択肢ウということは、主キーに「顧客番号」を含めるということでしょうか。
そういうことなら、主キーにはなりません。

日本語での表現が難しいところもありますが、主キーは、
「余計な属性を一切含まない候補キーであること」が条件です。

逆に言えば、上記の条件を満たしていれば、どの候補キーも主キーにできます。
候補キーに余分な属性を加えたものはスーパーキーと呼びます。これが質問文での概念に当てはまるものかと思います。
2015.02.02 20:04

返信投稿用フォーム

スパム防止のためにスレッド作成日から30日経過したスレッドへの書込みはできません。

その他のスレッド


Pagetop