E-R図は、データベース設計の入り口とも言える基本概念です。「エンティティ」「リレーションシップ」「アトリビュート」「カーディナリティ」など、横文字が次々に出てきて混乱しがちですが、仕組み自体は非常にシンプルです。

対象試験と出題頻度

E-R図は、基本情報技術者・応用情報技術者で出題されるテーマです。

DBMSやデータベース設計に関する問題として定番化しており、午前問題ではE-R図の構成要素やカーディナリティの読み取りが繰り返し問われています。

詳細をクリックして確認
対象試験:
基本情報技術者
応用情報技術者
出題頻度:
★★★★★
ランクS(超重要)絶対に覚える必要あり

用語の定義

情報処理試験を勉強していると、「E-R図って何を描く図?DFDやUMLの図とどう違うの?」と混乱しがちです。

E-R図(Entity-Relationship Diagram)とは、一言で言うと

 「データベース化の対象をエンティティ(実体)とリレーションシップ(関連)で整理して表現する図

のことです。

イメージとしては、学校の相関図です。

「生徒」「先生」「クラス」といった登場人物(=エンティティ)がいて、「生徒はクラスに所属する」「先生はクラスを担当する」といった関係(=リレーションシップ)が線でつながれています。

誰がどんな属性(名前・学年など)を持っているかも書き込める。これがE-R図の構造そのものです。

📊 E-R図の基本情報

項目 内容
正式名称 Entity-Relationship Diagram(実体関連図)
提唱者 ピーター・チェン(Peter Chen)が1976年に提唱
主な利用工程 概念設計(概念データモデルの作成)
構成要素 エンティティ、リレーションシップ、アトリビュート、カーディナリティ

解説

データベースを構築する前に、「現実世界のどのデータを、どんな構造で格納するか」を設計する工程があります。

この設計工程は「概念設計 → 論理設計 → 物理設計」の3段階で進みますが、E-R図は最初の概念設計で使われます。

概念設計の目的は、特定のDBMS(Oracle、MySQLなど)に依存しない形でデータの構造と関係を整理すること。このとき作成されるモデルを「概念データモデル」と呼び、その記法がE-R図です。

4つの構成要素

E-R図を読み書きするうえで押さえるべき要素は4つです。

📊 E-R図の4つの構成要素

要素 記号 役割
エンティティ
(実体)
社員
四角形
管理対象となるデータの集合。「社員」「商品」「注文」など。物理的なモノだけでなく、概念やイベントもエンティティになる
アトリビュート
(属性)
社員番号
楕円(主キーは下線)
エンティティが持つ個々の項目。「社員番号」「氏名」「入社日」など。主キーとなる属性には下線を引く
リレーションシップ
(関連)
所属
ひし形
エンティティ間のつながり。「所属する」「購入する」など、動詞で表現される
カーディナリティ
(多重度)
1 *
線上の数字(1, *など)
エンティティ間の対応数。「1対1」「1対多」「多対多」の3種類がある

図解:E-R図の基本構造(チェン記法)

ピーター・チェンが提唱したオリジナルの記法(チェン記法)では、エンティティを四角形、リレーションシップをひし形、アトリビュートを楕円で表現します。

チェン記法による E-R図の例(社員と部署)

社員 所属 部署
社員番号
氏名
入社日
← 社員の属性
部署コード
部署名
← 部署の属性

▲ 四角形=エンティティ / ひし形=リレーションシップ / 楕円=アトリビュート / 下線付き=主キー

カーディナリティ(多重度)の3パターン

エンティティ同士の対応数を示すカーディナリティは、データベース設計の根幹です。

3種類の違いを正確に区別できるかが理解のカギになります。

種類 意味 具体例
1対1 一方のインスタンス1件に対し、もう一方のインスタンスも1件だけ対応する 社員 ── 社員証
(1人の社員に社員証は1枚)
1対多 一方のインスタンス1件に対し、もう一方が複数対応する 部署 ── 社員
(1つの部署に複数の社員が所属)
多対多 双方ともに複数のインスタンスが対応する 学生 ── 科目
(1人の学生は複数科目を履修し、1科目には複数の学生がいる)

カーディナリティの図解

社員
1 ———— 1
社員証
(1対1)
部署
1 ———— *
社員
(1対多)
学生
* ———— *
科目
(多対多)

▲ 「*」は「多」を意味する。多対多は中間テーブルを置いて1対多に分解するのが実装の基本

多対多の分解

関係データベースでは、多対多の関係をそのままテーブルに実装できません。

そこで、間に「中間エンティティ(連関エンティティ)」を置いて、1対多 × 2 に分解します。

多対多の分解イメージ

【分解前】

学生
* ———— *
科目

【分解後】

学生
1 —— *
履修
* —— 1
科目

▲ 「履修」が中間エンティティ。学生と科目それぞれの主キーを外部キーとして持つ

もう少し詳しく知りたい方はこちら(強エンティティと弱エンティティ)

E-R図のエンティティは、独立して存在できるかどうかで2種類に分類されます。

強エンティティ:他のエンティティに依存せず独立して存在できる。「学生」「科目」がこれにあたります。

弱エンティティ:他のエンティティが存在しなければ意味を持たない。先ほどの「履修」がこれにあたります。学生も科目も存在しなければ「履修」は成り立ちません。

試験ではここまで問われることは少ないですが、午後問題のデータベース設計で中間テーブルを設計する際に意識しておくと理解が深まります。

では、この用語が試験でどのように出題されるか見ていきましょう。

💡 E-R図の核心を3行で

・データベースの概念設計で、対象データをエンティティ(実体)とリレーションシップ(関連)で表現する図
・構成要素は「エンティティ(四角形)」「リレーションシップ(ひし形)」「アトリビュート(楕円)」「カーディナリティ(1対1/1対多/多対多)」
・多対多は中間エンティティを挟んで1対多に分解するのが関係データベースでの実装の基本


試験ではこう出る!

E-R図は、FE・APの午前問題で繰り返し出題されている超定番テーマです。午後問題ではデータベース設計の大問でE-R図の読み取りが必須になります。

出題パターンは大きく3つに分かれます。

📊 過去問での出題実績

試験回 出題内容 問われたポイント
FE R7公開
科目A 問11
E-Rモデルにおけるエンティティの特徴を選ぶ問題 ・「属性(アトリビュート)をもつ」が正解
・エンティティとインスタンスは1対多である点がひっかけ
FE H24秋
午前 問26
E-R図の説明として適切なものを選ぶ問題 ・「1対多、多対多などのリレーションシップがある」が正解
・「参照側から矢印線で表現する」はDFDの特徴で不正解
FE H24春
午前 問28
E-R図に関する記述の正誤を問う問題 ・「業務で扱う情報をエンティティ及びリレーションシップとして表現」が正解
・「関係DBの実装前提」は誤り(DBMS非依存)
AP H25秋
午前 問45
E-R図の多対多の自己参照を読み取る問題 ・多対多の関連からネットワーク構造を読み取れるかが焦点
・「組織は2段階の階層構造」はよくある誤答

📝 IPA試験での出題パターン

パターン1:「E-R図の説明を選べ」
E-R図・DFD・UMLなどの説明文が並び、E-R図に該当するものを選ぶ形式。ひっかけとして「データの流れ」(DFD)、「プロセス間の関連」(フローチャート系)の説明が紛れ込む。キーワードは「エンティティ」「リレーションシップ」。

パターン2:「エンティティの特徴を選べ」
FE R7公開問題のように、エンティティの性質を問う形式。「エンティティとインスタンスは1対1」(正しくは1対多)、「物的に実現するもののみ」(概念もなり得る)が典型的なひっかけ。

パターン3:「カーディナリティを読み取れ」
AP午前で出題される形式。E-R図を見て、1対多・多対多などの対応関係から正しい解釈を選ぶ。ここだけは確実に押さえてください。「多対多はネットワーク構造になる」という知識で正解できる問題が多いです。


【確認テスト】理解度チェック

ここまでの内容を理解できたか、簡単なクイズで確認してみましょう。


Q. E-R図に関する記述として、最も適切なものはどれでしょうか?

  • A. 業務で扱うデータをエンティティ(実体)とリレーションシップ(関連)で表現し、エンティティ間には1対多、多対多などの対応関係がある。
  • B. データの生成から消滅に至る流れをプロセスとデータストアで表現し、外部エンティティとの入出力を明示する。
  • C. オブジェクトの状態とイベントによる遷移を表現し、システムの動的なふるまいを記述する。

正解と解説を見る

正解:A

解説:
E-R図は、データベースの概念設計において、対象データをエンティティとリレーションシップで整理し、カーディナリティで対応数を明示する図です。

選択肢BはDFD(データフローダイアグラム)の説明です。DFDはデータの流れに着目した図であり、エンティティ間の関連を表現するE-R図とは目的が異なります。選択肢Cは状態遷移図(状態マシン図)の説明です。状態遷移図はオブジェクトがどのような状態を経るかを時系列で記述するものであり、静的なデータ構造を表現するE-R図とは対象が異なります。


よくある質問(FAQ)

Q. E-R図は関係データベース専用の図ですか?

専用ではありません。E-R図はDBMSの種類に依存しない概念モデルの記法です。関係データベースの設計で最もよく使われますが、記法自体は任意のオブジェクトとその関連を記述できるため、NoSQLのデータモデリングや業務分析のデータ整理にも応用されます。FE H24春 午前問28では「関係データベースの表として実装することを前提に作成する」という選択肢が不正解として出題されています。

Q. E-R図とDFD(データフローダイアグラム)はどう使い分けますか?

E-R図は「データの構造と関係」を静的に表現する図であり、DFDは「データの流れと処理」を動的に表現する図です。概念設計でデータ構造を整理したいときはE-R図、業務プロセスの中でデータがどこからどこへ流れるかを把握したいときはDFDを使います。過去問の選択肢では「データの流れに注目して~」という文言がDFDの説明として頻繁に登場するので、見分けるポイントとして覚えておくと効果的です。

Q. チェン記法以外のE-R図の記法はありますか?

あります。実務では「IE記法(Information Engineering記法)」や「IDEF1X記法」が広く使われています。IE記法では、リレーションシップをひし形ではなく線の端に「鳥の足」のような記号で多重度を表現します(このため「鳥の足記法」とも呼ばれます)。IPA試験ではチェン記法とIE記法のどちらも出題される可能性がありますが、基本的な構成要素(エンティティ・リレーションシップ・アトリビュート・カーディナリティ)はどの記法でも共通です。

Q. エンティティとインスタンスの違いは何ですか?

エンティティは「社員」「商品」といったデータの集合(型)を指し、インスタンスはその中に含まれる具体的な1件のデータ(例:社員A、社員B)を指します。つまり、エンティティとインスタンスは「1対多」の関係です。FE R7公開問題の科目A問11では「エンティティとインスタンスは1対1の対応関係」という選択肢が不正解として出題されており、この区別は頻出の論点です。