DBデータベーススペシャリスト試験 午前Ⅱ

平成31年度春期 データベーススペシャリスト 午前Ⅱ 問5

問題文と選択肢を読んで答えを考えてから、下の「正解と解説を見る」で確認しましょう。

問題

四つの表の関係を表すE-R図として,適切なものはどれか。ここで,1−*は1対多の関連を表し,実線の下線は主キーを,破線の下線は外部キーを表す。
医師,診療科,診察,患者の四表について主キーと外部キーを示し,四通りの1対多関係を候補ア〜エとして示した図。
医師,診療科,診察,患者の四表について主キーと外部キーを示し,四通りの1対多関係を候補ア〜エとして示した図。

選択肢

  1. ア
    医師 *−1 診療科 *−1 診察 1−* 患者
  2. イ
    医師 *−1 診療科 1−* 診察 *−1 患者
  3. ウ
    医師 1−* 診療科 *−1 診察 1−* 患者
  4. エ
    医師 1−* 診療科 1−* 診察 *−1 患者
解き方のヒントを見る

エンティティ関係を見極める視点

エンティティ間の関係を整理するときは、登場する対象を同じ粒度で捉え、関係の意味・向き・成立条件を切り分けて確認する観点を学びます。図や定義の読み違いを防ぐ考え方です。

この問題で問われていること

画面の各選択肢を比べる前に、対象同士がどのような意味で結び付くのか、関係の向きや成立する条件を一つの観点として整理し、用語の粒度が揃っているかを確認してください。

関係の意味に注目する

対象そのものの説明と、対象同士を結び付ける関係の説明を分けて読みます。関係が示す役割や前提を整理し、対象の粒度や用語の使われ方が一貫しているかを確認しましょう。

確認ポイント

  • 関係が表す意味を、対象の属性と混同していないか確認する
  • 関係の向きや役割が、対象の組み合わせごとに整合しているか見る
  • 成立条件や用語の粒度が、説明全体で一貫しているか確かめる
正解と解説を見る

正解

イ

解説

医師は一つの診療科に所属し、診療科には複数の医師が所属します。また、診察は診療科と患者を結び付ける記録なので、診療科と患者はいずれも複数の診察に関係します。したがって、各関連の多側・1側を正しく配置したイが適切です。

理由

医師表の診療科コードは診療科表を参照する外部キーです。一つの診療科に複数の医師が所属できるため、診療科側が1、医師側が*になります。診察表の診療科コードも診療科表を参照するため、一つの診療科に複数の診察が対応します。

比較

診察表には患者番号もあり、患者表の患者番号を参照します。一人の患者は複数回診察を受けられるため、患者側が1、診察側が*です。以上の三つの関連を同時に満たすのはイです。

選択肢ア

これは不正解だよ。医師と診療科の関連は、診療科側が1、医師側が*なので、この部分は合っています。しかし、診療科と診察では診療科側が1、診察側が*であり、選択肢は逆です。さらに診察と患者の向きも、診察側が*、患者側が1であるため逆になっています。

選択肢イ(正解)

これは正解だよ。医師表の診療科コードは診療科表を参照するので、診療科1に対して医師が*となります。診療科1に対して診察は*、患者1人に対して診察は*となるため、医師*−1診療科1−*診察*−1患者の関係が表と一致します。

選択肢ウ

これは不正解だよ。診療科と診察、診察と患者の関連は、診察表がそれぞれ診療科コードと患者番号を持つため、診察側が*になります。この選択肢では診療科側が*、患者側が*となっており、外部キーを持つ診察表との対応が逆です。

選択肢エ

これは不正解だよ。診療科と診察の関連では、診療科一つに対して複数の診察が記録されるため、診療科側が1、診察側が*です。この選択肢はその部分を正しく示していますが、医師と診療科の関連で医師側を1としており、所属関係の向きが誤っています。また、診察と患者の向きも逆です。

学習のポイント

主キーと外部キーの対応から、1対多の向きを判定する方法を学びます。

出典:独立行政法人 情報処理推進機構(IPA)平成31年度春期 データベーススペシャリスト試験 午前Ⅱ 問5(公式資料:問題冊子(PDF) / 解答例)

関連する過去問一覧

IPA Advancedは非公式の学習サイトです。解説にはAIによる補助生成を含む場合があります。公式の問題冊子・解答例・採点講評を優先し、誤りは確認後に訂正します。運営・編集方針