「ER図」という言葉を聞いたことはあるでしょうか。
システム開発やデータベース設計の現場ではよく登場する用語ですが、初めて目にする方には「何のための図なのか」「どうやって読むのか」がわかりにくいかもしれません。
ER図は、データベースの設計を視覚的に表現するための図で、エンティティ(データの塊)とリレーション(関係性)を記号や線で表したものです。
この記事では、ER図の意味・基本的な概念・記号の読み方・見方について、データベース初心者の方にもわかりやすく解説していきます。
ER図とはデータベースの設計図である
それではまず、ER図とは何かという結論から解説していきます。
ER図とは「Entity Relationship Diagram(エンティティ・リレーションシップ・ダイアグラム)」の略称で、データベースに登場するデータの種類とその関係性を図で表したものです。
システム開発の現場では、データをどのように管理・格納するかを設計する工程があります。
そのときに「どんなデータが存在し、それぞれがどのように関係しているか」を整理するために使われるのがER図です。
ER図(Entity Relationship Diagram)とは、データベース設計において「エンティティ(データの実体)」と「リレーション(関係性)」を視覚的に表現した設計図のことです。
システムが扱うデータの全体像を一目で把握でき、開発メンバー間の認識合わせにも役立ちます。
たとえば「ネットショップのシステムを作る」という場合、「顧客」「商品」「注文」「在庫」といったさまざまなデータが登場します。
これらのデータがお互いにどう関連しているかを図で整理したものが、ER図です。
データベース設計の基礎となる重要なドキュメントといえるでしょう。

上の図のように、ER図では四角い箱がデータの塊(エンティティ)を表し、線がそのつながり(リレーション)を表します。
線の端についている記号が「1対多」「多対多」などの関係の種類を示す仕組みです。
ER図が必要とされる理由
ER図がなぜ必要とされるかというと、データベース設計のミスを事前に防ぐためです。
データベースを実際に作り始めてから「このデータとこのデータをどう結びつけるか決めていなかった」となると、修正に大きなコストがかかります。
ER図を先に作っておけば、設計段階で問題点に気づくことができ、開発効率が大幅に向上するでしょう。
また、チーム開発では複数の開発者が同じデータベースを扱うため、共通の設計図として認識を合わせる役割も果たします。
ER図が使われる場面
ER図は主に以下のような場面で活用されます。
| 場面 | 内容 |
|---|---|
| 新規システム開発 | データベースの構造を設計する際に作成する |
| 既存システムの改修 | 現状のDB構造を把握・ドキュメント化するために使う |
| チームへの仕様共有 | 開発メンバーや顧客への説明資料として活用する |
| レビュー・設計検討 | 設計の問題点を洗い出すためのレビュー資料にする |
このように、システム開発のさまざまな場面でER図は活用される重要なドキュメントです。
ER図とデータベース設計の関係
ER図はデータベース設計の「概念設計」段階で作成されます。
概念設計とは、実際にどのデータベースを使うか(MySQLなのかPostgreSQLなのか)を考える前に、「どんなデータが存在するか」「それらがどう関係するか」を整理する工程です。
ER図で概念設計を固めた後、論理設計・物理設計へと進んでいくのが一般的な流れといえるでしょう。
ER図の基本要素:エンティティ・属性・リレーション
続いては、ER図を構成する3つの基本要素について確認していきましょう。
ER図を理解するうえで最も重要なのが「エンティティ」「属性」「リレーション」の3つです。
エンティティ(Entity)とは
エンティティとは、データベースで管理する「もの」や「概念」のことです。
わかりやすく言い換えると、データとして記録・管理する対象のことを指します。
エンティティの例
・顧客(Customer)
・商品(Product)
・注文(Order)
・社員(Employee)
・部署(Department)
ER図では四角い箱で表現され、箱の中にエンティティ名が書かれます。
エンティティはデータベースのテーブルに対応すると考えると理解しやすいでしょう。
属性(Attribute)とは
属性とは、エンティティが持つ具体的なデータ項目のことです。
たとえば「顧客」というエンティティであれば「顧客ID」「氏名」「メールアドレス」「電話番号」などが属性にあたります。
データベースのテーブルに置き換えると、属性はテーブルの列(カラム)に対応するものです。
属性の中でも特に重要なのが「主キー(Primary Key)」で、各レコードを一意に識別するための属性です。
リレーション(Relation)とは
リレーションとは、エンティティ同士のつながり・関係性のことです。
ER図ではエンティティ間を結ぶ線として表現されます。
「顧客は複数の注文をする」「注文には複数の商品が含まれる」といった関係性を、線と記号を使って視覚的に表現するのがリレーションです。
リレーションには「1対1」「1対多」「多対多」の種類があり、それぞれ線の端の記号で区別します。
ER図の記号と見方・読み方
続いては、ER図に登場する記号の意味と読み方を確認していきましょう。
ER図には複数の記法(書き方のルール)が存在しますが、特によく使われるのが「IE記法」と「UML記法」の2種類です。
IE記法の記号と意味
IE記法(Information Engineering記法)は、エンティティ間の関係数を「鳥の足」に似た記号で表現する記法です。
現場でもっとも広く使われている記法のひとつで、多くのER図作成ツールがIE記法に対応しています。
| 記号 | 意味 | 例 |
|---|---|---|
| |(縦線1本) | 1(必ず1件) | 注文には必ず1人の顧客がいる |
| ○(丸) | 0(0件もあり得る) | 注文が0件の顧客もいる |
| <(鳥の足・複数線) | 多(1件以上) | 顧客は複数の注文をする |
| ○+<の組み合わせ | 0以上(0件または多件) | 注文が0件か複数件の顧客 |
これらの記号は線の端に付いており、組み合わせによってリレーションの種類を表現します。
UML記法との違い
UML記法はソフトウェア設計全般で使われる統一モデリング言語(UML)のクラス図をもとにしたER図の書き方です。
IE記法が「鳥の足」のような直感的な記号を使うのに対し、UML記法は数字や「0..1」「1..*」といったテキストで関係数を表現します。
UML記法でよく使う表記
・1 → 必ず1件
・0..1 → 0件または1件
・1..* → 1件以上(1対多)
・0..* → 0件以上(0対多)
・* → 多(件数制限なし)
どちらの記法を使うかはプロジェクトやチームの方針によります。
現場ではIE記法がよく使われますが、UMLに慣れたエンジニアが多いチームではUML記法が選ばれることもあるでしょう。
ER図の読み方(カーディナリティの確認方法)
ER図を読むとき、まず確認するのが各線の両端の記号(カーディナリティ)です。
カーディナリティとは、エンティティ間の関係における件数の比率を指します。
読み方は「Aは1件につき、Bを何件持つか」という視点で考えると整理しやすくなります。
たとえば「顧客」と「注文」の間に「1対多」のリレーションがある場合は「1人の顧客は複数の注文を持つ」と読めます。
≪
ER図の主キー・外部キーと正規化の基本
続いては、ER図でよく登場する「主キー」「外部キー」、そして「正規化」という概念を確認していきましょう。
これらはER図を正しく作成・読み取るうえで欠かせない知識です。
主キー(Primary Key)とは
主キーとは、テーブル内の各レコードを一意に識別するための項目(属性)のことです。
主キーには重複した値を設定できません。
たとえば「顧客テーブル」であれば「顧客ID」が主キーになります。
同じ顧客IDを持つレコードは存在しないため、顧客IDを指定すれば必ず一件の顧客データを特定できます。
ER図では主キーの項目名の先頭に「PK」と記載するか、下線を引いて表現することが多いでしょう。
外部キー(Foreign Key)とは
外部キーとは、別のテーブルの主キーを参照するための項目です。
「注文テーブル」に「顧客ID」という列がある場合、この「顧客ID」が外部キーにあたります。
外部キーはエンティティ間のリレーションを実現する仕組みであり、ER図の線はまさにこの外部キーの関係を視覚化したものです。
ER図では「FK」と記載して外部キーを示すことが多くなっています。
正規化とER図の関係
正規化とは、データの重複や矛盾を排除するためにテーブル構造を整理するプロセスです。
適切に正規化されたデータベースは、データの一貫性が保たれ、更新・削除時のトラブルが起きにくいという特徴があります。
ER図を作成する際は、正規化の観点からエンティティや属性を設計することが重要です。
正規化の度合いは「第1正規形」「第2正規形」「第3正規形」などの段階で表され、一般的なシステム開発では第3正規形を目標にすることが多いでしょう。
まとめ
この記事では、ER図の意味・基本要素・記号の読み方・主キーと外部キーの関係について解説しました。
ER図とは、データベース設計においてエンティティ(データの実体)とリレーション(関係性)を視覚的に表現した設計図です。
エンティティ・属性・リレーションという3つの基本要素を理解したうえで、IE記法やUML記法の記号を読み解くことで、ER図を正しく読み取ることができるでしょう。
主キー(PK)と外部キー(FK)の概念は、テーブル間のつながりを理解するうえで特に重要なポイントです。
ER図はデータベース設計の第一歩となる重要なスキルですので、ぜひこの記事を参考に理解を深めてみてください。