本文へスキップ

FE SUBJECT A

基本情報技術者 科目Aの問題解説:第3正規形へ分解する主な目的として適切なものはどれか。

テクノロジ系 標準 fe_a_s006_q007

問題

第3正規形へ分解する主な目的として適切なものはどれか。

  1. 推移的関数従属を排除する。(正解)
  2. 全ての列を文字列型にする。
  3. 主キーを削除する。
  4. 索引を必ず一つだけ作る。
出典:オリジナル問題|参考範囲:試験要綱Ver.5.5 / FEシラバスVer.9.2 科目A範囲

正解と解説

正解:推移的関数従属を排除する。

考え方:これは第3正規形が何を排除した形かを問う問題です。第3正規形は、主キーでない項目が別の主キーでない項目に依存する「推移的関数従属」を排除した形です。例えば、社員番号から部署番号が決まり、部署番号から部署名が決まる表では、部署名は社員番号に推移的に依存しています。

誤答の理由:全列を文字列型にすること、主キーを削除すること、索引を1つだけにすることは、正規化の段階とは関係がありません。正規化はデータの重複や更新異常を減らすための設計です。

軽い類題:「受注番号→顧客番号→顧客名」のように、非キー項目を経由して別の非キー項目が決まるなら、第3正規形への分解対象になります。

他の選択肢はなぜ違う?

  • 全列を文字列型にするのは型設計の話ですらない改悪。正規化と無関係。
  • 主キーの削除はむしろ整合性を壊す。正規化の段階ではない。
  • 索引の本数は性能チューニングの話。正規形の定義には登場しない。

この問題について

出典:オリジナル問題|参考範囲:試験要綱Ver.5.5 / FEシラバスVer.9.2 科目A範囲

IPAが公開するシラバス・試験範囲・公開問題の出題形式を参考にした独自作成問題。公式問題・過去問題の転載ではありません。

公式試験問題、過去問題、公式サンプル問題、市販教材の問題文を転載したものではありません。

参考範囲: シラバスVer.9.2参考

参考文献・出典(公式情報)

RELATED

関連問題