令和元年度 秋期 (特別措置試験) 問87
データベース
関係データベースに関する問題
売上伝票のデータを関係データベースの表で管理することを考える。売上伝票の表を設計するときに,表を構成するフィールドの関連性を分析し,データの重複及び不整合が発生しないように,複数の表に分ける作業はどれか。
- ア結合
- イ射影
- ウ正規化
- エ排他制御
答えと解説を見る
✓ これが正解ウ正規化
解説
重複や不整合を防ぐために表を分けていく作業が正規化です。
売上伝票をそのまま一つの表にすると、同じ商品名や同じ得意先名が、伝票の数だけ繰り返し現れます。重複が多いと置き場所が無駄になるだけでなく、名前を直すときに直し漏れが出て、食い違いが生まれます。一つの表の中に古い名前が残ります。そこで、列どうしの関わりを調べて、繰り返し現れるまとまりを別の表へ切り出します。この作業を正規化といいます。商品の表、得意先の表、売上の明細の表という具合に分け、互いを結び付けるための列を置きます。こうしておけば、商品名を直すときは商品の表を一箇所直すだけで済みます。関係データベースの設計では、まずこの形に整えることが土台になります。分けた表は、必要になったときにつなぎ直して使えばよいので、見たい形が失われるわけではありません。よって最も適切なのは正規化です。
ほかの選択肢はなぜ違うのか
- ア結合:結合は、分かれている複数の表を、共通する列を手掛かりにつなぎ合わせる操作です。分けたものを使うときに行うので、設計の段階で表を分ける作業とは向きが逆になります。そもそも表を分けていなければ、この操作の出番もありません。
- イ射影:射影は、一つの表から必要な列だけを縦に抜き出す操作です。見たい部分だけに絞って取り出すために使うもので、表の形そのものには手を触れません。重複をなくすために表を組み替える設計の作業とは、行う時期も目的もまるで違います。
- エ排他制御:排他制御は、複数のプログラムが同じデータへ同時に書き込もうとしたときに、あとになって食い違いが起きないようにする働きです。動かしている最中に効く仕組みであり、表の形をあらかじめどう設計するかという話ではありません。
この問題の用語
- 排他制御同じデータを同時に更新しても、矛盾が起きないようにする仕組みです。先の処理が終わるまで、後の処理を待たせて防ぎます。
- 関係データベースデータを表の形で持ち、表どうしを結びつけて扱う、最も広く使われているデータベース。データの定義や操作にはSQLを使います。
- 分析集めたデータを細かく分けて、何がどう関わっているかを読み取ること。量が増えるほど、扱う道具も考え方も変わります。
- 作業工程を組み立てる、一つひとつの仕事の単位のことです。開始と終了、所要日数をもち、順序をつないで全体の日程を作ります。
出典:令和元年度 秋期 ITパスポート試験(特別措置試験) 問87
同じ用語が出る問題
- 令和8年度 問72:外部キーに関する問題(関係データベース)
- 令和8年度 問69:正規化に関する問題(関係データベース)
- 令和6年度 問74:トランザクション処理に関する記述(排他制御)
- 令和5年度 問66:コミットの説明(排他制御)
- 令和2年度 10月 (特別措置試験) 問64:DBMSに関する問題(排他制御)
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)