DBデータベーススペシャリスト試験 午前Ⅱ

令和2年度10月 データベーススペシャリスト 午前Ⅱ 問5

問題文と選択肢を読んで答えを考えてから、下の「正解と解説を見る」で確認しましょう。

問題

第2正規形であるが第3正規形でない表はどれか。ここで,講義名に対して担当教員は一意に決まり,所属コードに対して勤務地は一意に決まるものとする。また,{ }は繰返し項目を表し,実線の下線は主キーを表す。
主キーを下線で示した学生・講義・教員・成績表,社員基本表,所属・勤務地表,及び趣味を繰返し項目として含む社員表の四つの候補。
主キーを下線で示した学生・講義・教員・成績表,社員基本表,所属・勤務地表,及び趣味を繰返し項目として含む社員表の四つの候補。

選択肢

  1. ア
    学生番号・講義名・担当教員・成績の表(主キー:学生番号と講義名,例:2122・経済学・山田教授・優)
  2. イ
    社員番号・氏名・入社年月日・電話番号の表(主キー:社員番号,例:71235・山田 太郎・2001-04-01・03-1234-5678)
  3. ウ
    社員番号・氏名・所属コード・勤務地の表(主キー:社員番号,例:15547・小林 明・75T・東京)
  4. エ
    社員番号・身長・体重・繰返し項目{趣味}の表(主キー:社員番号,例:71234・170・62・{テニス,ゴルフ})
解き方のヒントを見る

関数従属を整理する視点

関数従属と正規形を検討するときは、属性どうしの決まり方を整理し、候補となるキーや部分的な依存の有無を順に確認して、表の分解方針を慎重に比較します。各段階の条件を混同しないことが大切です。

この問題で問われていること

この問題では、個々の属性の値がどの属性の組合せに依存しているかという関係の整理に焦点を置き、候補キー、主属性、非キー属性の関係を表に書き出して、正規化の段階ごとの観点を分けて確認します。

視点

関数従属は、属性間の決まり方を表す概念として捉えます。まず左辺と右辺の役割を区別し、候補キーとの関係、属性のまとまり、分解後に保ちたい情報をそれぞれ別欄に整理します。正規形の判定では、同じ条件を一度に結論づけず、段階ごとに観点を切り替えて検討します。

確認ポイント

  • 各属性がどの属性の組合せと結び付いているかを整理する
  • 候補キーと各属性の位置関係を確認する
  • 正規化の段階ごとに確認条件を分けて記録する
正解と解説を見る

正解

ウ

解説

第2正規形は満たす一方で第3正規形を満たさないのはウです。社員番号から所属コードが決まり、所属コードから勤務地が決まるため、勤務地が非キー属性を経由して決まる推移的関数従属性が存在する。

理由

ウでは主キーが社員番号だけなので、社員番号に一部だけ依存する属性はなく、第2正規形の条件を満たす。一方、社員番号から所属コードが決まり、所属コードから勤務地が一意に決まるため、勤務地は所属コードを経由して社員番号に依存する。これは第3正規形に反する。

比較

アは複合主キーの一部である講義名から担当教員が決まるため、第2正規形を満たさない。イは社員番号を主キーとする単純な表で、提示された属性間に問題となる推移的依存はない。エは趣味が繰返し項目であり、第1正規形を満たさない。

選択肢ア

これは不正解だよ。主キーは学生番号と講義名の組合せであるが、設問より講義名に対して担当教員が一意に決まる。したがって担当教員は複合主キー全体ではなく、その一部である講義名だけに依存し、第2正規形を満たさない。

選択肢イ

これは不正解だよ。主キーは社員番号という単一属性なので、主キーの一部だけに依存する部分関数従属性は生じない。氏名、入社年月日、電話番号はいずれも社員番号に対応する属性として示されており、第2正規形だけでなく第3正規形にも反する関係は読み取れない。

選択肢ウ(正解)

これは正解だよ。主キーは社員番号だけなので、第2正規形の条件は満たす。しかし社員番号から所属コードが決まり、さらに所属コードから勤務地が一意に決まるため、勤務地は非キー属性である所属コードを経由して決まる。この推移的関数従属性により第3正規形ではない。

選択肢エ

これは不正解だよ。主キーは社員番号であるが、趣味の値がテニスとゴルフのように一つの欄へ複数入る繰返し項目になっている。これは第2正規形や第3正規形を検討する前に、第1正規形の原子値の条件を満たさない表である。

学習のポイント

第2正規形と第3正規形の違いを、部分関数従属性と推移的関数従属性で整理する。

出典:独立行政法人 情報処理推進機構(IPA)令和2年度10月 データベーススペシャリスト試験 午前Ⅱ 問5(公式資料:問題冊子(PDF) / 解答例)

関連する過去問一覧

IPA Advancedは非公式の学習サイトです。解説にはAIによる補助生成を含む場合があります。公式の問題冊子・解答例・採点講評を優先し、誤りは確認後に訂正します。運営・編集方針