⏱ 6分 ★★★★☆ 頻出:高

エンティティとリレーション

強・弱・関連エンティティの3種類と属性の分類を理解する

エンティティの種類=強・弱・関連の3タイプ

ER図のエンティティは性質によって3種類に分けられます。試験では特に弱エンティティ関連エンティティが問われます。

エンティティの3種類

① 強エンティティ(独立エンティティ)
それ自体の主キーで存在を識別できるエンティティ。
例:顧客(顧客IDで識別)、商品(商品IDで識別)
② 弱エンティティ(依存エンティティ)
他のエンティティの主キーを借りないと識別できないエンティティ。
例:注文明細(注文IDがないと「どの注文の明細か」が不明)
③ 関連エンティティ(交差エンティティ)
多対多(M:N)を解消するための中間テーブル。
例:受講(学生IDと講座IDの組み合わせで識別)

属性の種類

属性の種類説明
単純属性それ以上分割できない年齢、価格
複合属性複数の要素からなる住所(都道府県+市区町村+番地)
多値属性複数の値を持てる電話番号(複数持てる)
導出属性他の属性から計算できる年齢(生年月日から算出)
識別属性エンティティを一意識別顧客ID、注文ID
多値属性はそのままテーブルに入れられません。別テーブルに分離する必要があります(第1正規形の基本)。

リレーションシップの参加制約

全参加(必須)
エンティティの全インスタンスがリレーションに参加しなければならない
例:注文は必ず顧客に紐づく
部分参加(任意)
参加しないインスタンスがあっても構わない
例:顧客は注文がない場合もある
🧠 確認クイズ
Q1. 弱エンティティの説明として正しいのはどれか?
Q2. 多値属性をリレーショナルDBで表現するには?
Q3. 関連エンティティ(交差エンティティ)を作る主な目的は何か?