問題
関係データベースの正規化に関する記述として、適切なものはどれか。
ア)第一正規形とは、すべての非キー属性が主キーに完全関数従属している状態を指す。
イ)第二正規形とは、繰返し項目(非正規形の反復属性)を排除しただけの状態を指す。
ウ)第三正規形とは、第二正規形であり、かつ非キー属性間に推移的関数従属が存在しない状態を指す。
エ)ボイス・コッド正規形は、第一正規形よりも制約が緩い正規形である。
解答・解説を見る
正解: ウ)
解説:
- ア)「すべての非キー属性が主キーに完全関数従属している」のは第二正規形の定義です。第一正規形は繰返し項目を排除した状態を指すため、誤りです。
- イ)繰返し項目を排除しただけの状態は第一正規形です。第二正規形はさらに部分関数従属を排除(完全関数従属化)した状態のため、誤りです。
- ウ)第三正規形は、第二正規形であることに加え、非キー属性間の推移的関数従属(非キー属性が別の非キー属性を介して主キーに従属する関係)が存在しない状態です。正解です。
- エ)ボイス・コッド正規形(BCNF)は第三正規形をさらに厳密にした正規形であり、正規化の段階としてはより制約が強いものです。「緩い」という記述は誤りです。
重要キーワード
| 用語 | 説明 |
|---|---|
| 完全関数従属 | 非キー属性が主キー全体に従属し、一部には従属しない状態 |
| 部分関数従属 | 非キー属性が主キーの一部にのみ従属する状態 |
| 推移的関数従属 | 非キー属性が別の非キー属性を介して主キーに従属する関係 |
| ボイス・コッド正規形 | 第三正規形をさらに厳密化した正規形(BCNF) |