データベース設計 (全54問中3問目)

No.3

第3正規形であることの効果又は影響に関する記述として,適切なものはどれか。
  • 画面や帳票の行をそのままデータベースの行に対応させるので,データ量が増える。
  • 結合操作が不要となり,データベース全体の処理効率が向上する。
  • 更新時のデッドロックを避けることができる。
  • 冗長性が排除され,データの整合性を保ちやすくなる。

分類

テクノロジ系 » データベース » データベース設計

正解

解説

第3正規形は、第2正規形である表に対して、主キー以外の属性によって一意に決まる属性を別表に移すことで得られます。これによりデータの冗長性が排除され、第2正規形における行の挿入・削除および更新時の異常が発生しなくなります。

例えば次の表があったとします。
27_1.gif/image-size:220×114
この表は、非キー属性"顧客コード"→"顧客名"という関数従属性が存在しているので第2正規形です。しかしこの表には、非キー属性からの関数従属性が残るがゆえに、次に挙げる異常が発生する可能性があります。
行の挿入時
未受注の(受注番号をもたない)顧客を登録できない。
行の削除時
受注番号1055の行を削除すると、A7053:鈴木電気の顧客情報が失われるように、情報の損失が生じる恐れがある。
値の更新時
B7060:中村商会の顧客名を変更する際、一部の行の値だけを変更すると同じ顧客コードで複数の顧客名が存在することになってしまう。
上記の表を第3正規形にすると、これらの異常が発生しなくなるため整合性を保ちやすくなります。
27_2.gif/image-size:344×136
  • 表の分割によりデータの冗長性が排除されるため、データ量は少なくなります。
  • 表が分割されているのでデータベース操作の際に結合操作が必要になります。
  • 正規化とデッドロックは関係ありません。
  • 正しい。
© 2010-2019 応用情報技術者試験ドットコム All Rights Reserved.

Pagetop