“受注明細”表は,どのレベルまでの正規形の条件を満足しているか。ここで,実線の下線は主キーを表す。
受注明細
| 受注番号(主キー) | 明細番号(主キー) | 商品コード | 商品名 | 数量 |
|---|---|---|---|---|
| 015867 | 1 | TV20006 | 20型テレビ | 20 |
| 015867 | 2 | TV24005 | 24型テレビ | 10 |
| 015867 | 3 | TV28007 | 28型テレビ | 5 |
| 015868 | 1 | TV24005 | 24型テレビ | 8 |
テクノロジ系
“受注明細”表は,どのレベルまでの正規形の条件を満足しているか。ここで,実線の下線は主キーを表す。
受注明細
| 受注番号(主キー) | 明細番号(主キー) | 商品コード | 商品名 | 数量 |
|---|---|---|---|---|
| 015867 | 1 | TV20006 | 20型テレビ | 20 |
| 015867 | 2 | TV24005 | 24型テレビ | 10 |
| 015867 | 3 | TV28007 | 28型テレビ | 5 |
| 015868 | 1 | TV24005 | 24型テレビ | 8 |
正解 イ
主キー全体に依存しない列(部分関数従属)はありませんが、商品コード→商品名の推移的関数従属があるので、第2正規形です。
主キーは{受注番号、明細番号}です。商品コードと数量は、主キー全体によって決まります。主キーの一部だけで決まる列はないので、部分関数従属はなく、第2正規形の条件を満たします。一方、商品名は非キー属性の商品コードによって決まります。主キー→商品コード→商品名という推移的関数従属があるので、第3正規形の条件は満たしません。
ア:受注番号だけ、または明細番号だけで決まる列はなく、部分関数従属がありません。そのため第1正規形にとどまらず、第2正規形まで満たしています。
ウ:第3正規形は、非キー属性間の推移的関数従属がない形です。商品名が商品コードに従属しているので、第3正規形ではありません。
エ:第4正規形は、ボイスコッド正規形を満たしたうえで、自明でない多値従属性を除いた形です。第3正規形も満たしていない表は該当しません。
出典:平成29年度 春期 応用情報技術者試験 問27
全年度から出題。10問で実力を判定します。登録不要。
出典:平成29年度 春期 応用情報技術者試験 問27(独立行政法人情報処理推進機構)
解説と用語ページは生成 AI が書き、別の生成 AI が確かめています。作り方