過去問解きまくり研究所 ホーム

ITパスポート 令和2年度 10月 特別措置試験 問57

データベース

冗長な項目

次に示す項目を使って関係データベースで管理する“社員”表を設計する。他の項目から導出できる,冗長な項目はどれか。

社員

社員番号社員名生年月日現在の満年齢住所趣味
答えと解説

✓ これが正解イ 現在の満年齢

解説

現在の満年齢は、生年月日と今日から計算できるので冗長です。

関係データベースで表を設計するときは、他の項目から導き出せる値を、そのまま列として持たないようにします。持ってしまうと、もとの値と食い違う恐れが生まれるからです。社員の表を見ると、現在の満年齢は、生年月日と、いま何月何日かという情報があれば計算で求められます。しかも年齢は毎年変わるので、列として持つと、誕生日を過ぎるたびに書き換えなければならず、直し忘れれば誤った値が残ってしまいます。生年月日のほうは変わらない事実なので、こちらを持っておけば足ります。導ける値を持たないようにするのは、正規化の考え方につながります。住所や趣味は、他の項目から導き出せるものではないので、それぞれ持つ必要があります。持たなくても困らないものは、持たないのが原則です。よって冗長な項目は、現在の満年齢ということになります。

ほかの選択肢の解説

この分野を演習で解く この問題を記録に残す

関連用語

出典:令和2年度 10月 ITパスポート試験(特別措置試験) 問57(改変:原典の図表をテキストに書き起こした)

解説は当サイト独自のもので、IPA(独立行政法人情報処理推進機構)とは関係ありません。

関連問題

同じ分野の問題

誤りを見つけたら報告する(メールが開きます)