平成21年度 秋期 応用情報技術者試験 午前 問30
部品在庫管理台帳における,部品,仕入先,在庫の三つのエンティティの関係をデータモデルとして記述した。エンティティa〜cの組合せとして,適切なものはどれか。ここで,「1 ― *」は1対多の関連を表す。
部品在庫管理台帳
| 部品コード | 部品名 | 仕入先コード | 仕入先名 | 仕入日付 | 仕入価格 | 在庫数 |
|---|---|---|---|---|---|---|
| 001 | R部品 | Z010 | A商会 | 9月 1日 | 1,500 | 1,000 |
| 001 | R部品 | Z010 | A商会 | 10月15日 | 1,400 | 1,500 |
| 002 | S部品 | Z010 | A商会 | 9月20日 | 800 | 500 |
| 003 | T部品 | Z015 | B商店 | 10月 8日 | 1,600 | 1,450 |
| 003 | T部品 | Z020 | C商店 | 9月15日 | 1,200 | 800 |

| a | b | c | |
|---|---|---|---|
| ア | 在庫 | 仕入先 | 部品 |
| イ | 在庫 | 部品 | 仕入先 |
| ウ | 仕入先 | 部品 | 在庫 |
| エ | 部品 | 在庫 | 仕入先 |
キーボード:1〜4 で解答 → 次の問題 ← 前の問題
正解と解説を見る
解答する前に解説を開いたので、この問題は「見て解いた」として記録します(正解数には入りません)。
正解:エ
台帳から各エンティティの関係を読み取ります。
- 部品001(R部品)は2行あり,一つの部品に複数の在庫(仕入)レコードがあります → 部品 1 ― * 在庫
- 仕入先Z010(A商会)は3行あり,一つの仕入先に複数の在庫レコードがあります → 在庫 * ― 1 仕入先
- 部品003は仕入先Z015とZ020から仕入れており,仕入先Z010は部品001と002を納めているので,部品と仕入先は多対多です。この多対多の関係を,在庫が仲立ちしています。
したがって,真ん中のbが在庫,aとcが部品と仕入先になります。
-
ア: a: 在庫,b: 仕入先,c: 部品
誤り。在庫1件に対して仕入先が複数あることはなく(在庫が「1」側にはなりません),また部品と仕入先は多対多なので,仕入先と部品を直接「* ― 1」で結ぶこともできません。 -
イ: a: 在庫,b: 部品,c: 仕入先
誤り。部品は複数の仕入先から仕入れられるので,部品と仕入先は多対多です。部品を真ん中に置くと関係を表現できません。 -
ウ: a: 仕入先,b: 部品,c: 在庫
誤り。在庫は部品ごと・仕入ごとに複数あるので,在庫が「1」側になることはありません。 -
エ: a: 部品,b: 在庫,c: 仕入先
正しい。部品1件に対して在庫が複数,仕入先1件に対して在庫が複数あるので,部品 1― 在庫 ―1 仕入先 となります。
答え
エ: a: 部品,b: 在庫,c: 仕入先
出典:平成21年度 秋期 応用情報技術者試験 午前 問30