ER図(実体関連図)とは
ER図とは、システムが扱うデータを「顧客」「注文」「商品」のようなまとまりに分け、それぞれがどう関係しているかを線と記号で表した図です。データベース設計で使われます。
平易に言えば、「データの家系図」のようなものです。1人の顧客が何件の注文を持てるのか、1件の注文に何種類の商品を含められるのか、といったデータ同士のつながり方を一目で確認できます。
ERはEntity Relationship(実体と関連)の略で、ER図はERDやERダイアグラムとも呼ばれます。データのまとまりを「エンティティ」、つながりを「リレーションシップ」、エンティティが持つ項目を「属性」と呼びます。
ER図の構成要素と読み方
| 要素 | 意味 | 例 |
|---|---|---|
| エンティティ | 管理したいデータのまとまり | 顧客、注文、商品 |
| 属性 | エンティティが持つ項目 | 顧客名、メールアドレス、登録日 |
| 主キー | 1件を一意に特定する項目 | 顧客ID |
| 外部キー | 他のエンティティを参照する項目 | 注文が持つ顧客ID |
| リレーションシップ | エンティティ同士の関係 | 顧客は注文を持つ |
| カーディナリティ | 関係の数の対応 | 1対1、1対多、多対多 |
カーディナリティの書き方にはいくつかの流派があり、線の端に鳥の足のような記号を付ける「IE記法」や、数字で表す「IDEF1X」などがあります。どの記法でも読み方の基本は同じで、「この線の向こう側に、いくつ存在しうるか」を表しています。
多対多の関係はそのままではデータベースで扱いにくいため、間に中間のエンティティを置きます。たとえば「注文」と「商品」は多対多なので、「注文明細」というエンティティを挟み、注文1件に複数の明細、明細1件に商品1つ、という形に分解します。
実務での使い方・具体例
ある会社が、セミナーの申込管理をExcelからシステムへ移行するとします。現状のExcelは「申込者名、会社名、セミナー名、開催日、参加費、入金状況」が1行にまとまっています。ER図を描くと、次のように整理できます。
- 「会社」「申込者」「セミナー」「開催回」「申込」というエンティティに分ける
- 1つの会社には複数の申込者がいる(1対多)
- 1つのセミナーは複数回開催される(1対多)
- 申込者と開催回は多対多なので、「申込」を中間に置き、入金状況は申込に持たせる
こう整理すると、「同じ人が別の回に申し込んだときに会社名を二度入力しない」「セミナー名を変えたら全開催回に反映される」といった設計上の利点が見えてきます。Excelで起きていた表記ゆれや二重入力の原因も、ER図を描く過程で明らかになります。
発注側がER図を細部まで読む必要はありませんが、次の点は確認しておく価値があります。
- 業務で使う言葉とエンティティ名が対応しているか
- 「1人の顧客に担当者は1人だけか、複数いるか」など、数の対応が業務の実態と合っているか
- 将来増えそうな関係(複数店舗、複数ブランドなど)を想定しているか
数の対応を後から変えるのは、データ構造の作り直しを伴う大きな変更になりがちです。だからこそ、設計段階で業務担当者に確認する意味があります。
よくある誤解と注意点
ER図は技術者だけが見るものだと考える。 記号は技術的でも、「顧客と担当者の関係」のように内容は業務そのものです。業務担当者が口頭で説明を受けながら確認するだけでも、設計の誤りを防げます。
画面の項目をそのままエンティティにする。 画面に表示される単位とデータを持つ単位は一致しないことが多く、画面に合わせると重複や不整合が生まれます。データの性質で分けるのが原則です。
作成後にメンテナンスされない。 機能追加でテーブルが増えたのにER図が古いままだと、保守や引き継ぎの際に役に立ちません。データベースから図を自動生成するツールを使う方法もあります。
削除や履歴の扱いを図に表さない。 「退会した顧客の注文はどう残すか」「担当者が異動したら過去の記録はどちらにひも付くか」といった時間の経過に伴う変化は、ER図の線だけでは表しきれません。注記で補うか、履歴用のエンティティを設けるかを設計時に決めておくと、運用開始後に集計が合わないといった問題を防げます。
関連用語
- データベース設計:ER図を使ってデータの持ち方を決める設計作業
- 正規化(データベース):重複を減らすためにエンティティを分割する考え方
- RDB(リレーショナルデータベース):ER図の設計をもとに構築されることが多いデータベース
- マスタデータ:顧客や商品など、ER図で中心になりやすい基本データ
顧客データの項目設計は「顧客管理システムの設計」でも扱っています。
Otsumuに相談できること
Otsumuは、Excelやスプレッドシートで管理しているデータの構造を読み解き、システムに移す際のデータ設計から開発までを支援しています。業務の言葉でデータの関係を確認しながら進めるため、技術的な図に慣れていない方でも判断しやすい形でご提示します。
Excel業務の移行についてはExcel業務のシステム化のページをご覧ください。データの整理に迷ったら30分の無料相談からご相談いただけます。
執筆:Otsumu株式会社 / 編集日 2026.10.01