ER 図の Crow's Foot 記法 (IE 記法)
このページでは、ER 図の Crow's Foot 記法 (IE 記法) について説明します。
目次
Crow's Foot 記法?
Crow's Foot 記法は、ER 図のための書き方のひとつです。
「」のような鳥の足に見える記号を使うため、「Crow's Foot 記法」(Crow's Foot = カラスの足) 「鳥の足記法」と呼ばれています。
日本では IE 記法と呼ばれることが多いです。(IE = Information engineering。Crow's Foot 記法を採用している)
基本的な記号
Crow's Foot 記法の基本的な記号は下記のとおりです。
記号 | 簡単な概要 |
---|---|
エンティティ (データ。エンティティ = データベースのテーブル、属性 = 列 にあたる) | |
リレーション (2つのエンティティの間に線をつなげることで関連を示す。リレーションの記号は後述) |
リレーションの記号
リレーションの線には、エンティティが関連する最小件数 (オプショナリティやモダリティと呼ばれる1) と最大件数 (カーディナリティ (多重度) と呼ばれる) を示すための記号を使用します。
記号 | 簡単な概要 |
---|---|
0 (オプショナリティで使う) | |
1 | |
多 (たくさん。カーディナリティで使う) |
リレーションと上記の記号を組み合わせると下記のような記号になります。(書き方によってオプショナリティを省略したケースなどもあります)
記号 | 最小 (オプショナリティ) | 最大 (カーディナリティ) | 意味 |
---|---|---|---|
0 () | 1 () | 0か1件のみ関連 (0~1) | |
1 () | 1 () | 必ず1件のみ関連 (1~1) | |
0 () | 多 () | 0件以上関連 (0~多) | |
1 () | 多 () | 必ず1件以上関連 (1~多) |
「A - B」という2つのエンティティの関連があるとき、B側についている記号は「Aから見たB側の関連」、A側についている記号は「Bから見たAの関連」を示します。
リレーションの例
リレーションの例を下記に示します。(下記は一例で、下記以外の組み合わせもあります)
1 対 1
例 | 意味 |
---|---|
A 1件に対して B は 0か1件のみ 関連する B 1件に対してA は 必ず1件のみ 関連する |
|
A 1件に対して B は 必ず1件のみ 関連する B 1件に対して A も 必ず1件のみ 関連する |
1 対 多
例 | 意味 |
---|---|
A 1件に対して B は 0件以上 関連する B 1件に対して A は 必ず1件のみ 関連する |
|
A 1件に対して B は 必ず1件以上 関連する B 1件に対して A は 必ず1件のみ 関連する |
多 対 多
例 | 意味 |
---|---|
A 1件に対して B は 0件以上 関連する B 1件に対して A も 0件以上 関連する |
|
A 1件に対して B は 0件以上 関連する B 1件に対して A は 必ず1件以上 関連する |
多対多の関連は一般的な RDBMS 製品ではもう一つ中間テーブルを設けて「A - (1対多) - 中間 - (多対1) - B」という形にしないと実現できないため、ER図でも同じように記載することもあります。
参考
- Entity–relationship model - Wikipedia
- Crow’s Foot Notation
- draw.io (ER 図、フローチャートなどを作図できるツール)
-
オプショナリティやモダリティは必須か (Mandatory)・任意か (Optional) を示す意味のものですが、「関連する最小件数」と考えるとわかりやすいです (必須 = 1、任意 = 0) ↩︎