Sam Lightstone 上司を驚かせてはいけない

blog image
令和5年 春期 AM1 問9

UMLを用いて表した図のデータモデルのa, bに入れる多重度はどれか。

〔条件〕
(1)部門には1人以上の社員が所属する。
(2)社員はいずれか一つの部門に所属する。
(3)社員が部門に所属した履歴を所属履歴として記録する。

解答:



ポイント:

データモデルの多重度(Multiplicity)とは、データモデリングやデータベース設計において使用される概念で、関連するエンティティ(データの要素やオブジェクト)間の関係を表現する際に、それぞれのエンティティが他のエンティティとどれだけの数(個数)で関連付けられるかを示すものです。

多重度は、1対1、1対多、多対1、多対多のような形式で表現されます。

以下にそれぞれの多重度の簡単な説明を示します。

  • 1対1(One-to-One)
    1つのエンティティが1つの別のエンティティと関連付けられる関係。例えば、顧客と配偶者の関係。

  • 1対多(One-to-Many)
    1つのエンティティが複数の別のエンティティと関連付けられる関係。例えば、1つの会社が複数の従業員を雇用する場合。

  • 多対1(Many-to-One)
    複数のエンティティが1つの別のエンティティと関連付けられる関係。例えば、複数の製品が同じカテゴリに属する場合。

  • 多対多(Many-to-Many)
    複数のエンティティが複数の別のエンティティと関連付けられる関係。例えば、学生とコースの関係で、1つの学生が複数のコースを履修し、1つのコースには複数の学生が在籍する場合。

エンティティの多重度を正確に設定することは、データベースやシステムの正確性やパフォーマンスに影響を与える重要な要素です。

多重度を適切に設計することで、データの整合性を維持し、システムが期待通りに機能することができます。


関連資料:


更新日:2023-09-07