「エンティティ(entity)」という言葉、ITやデータベースの話をしているとよく登場しますよね。
でも、
- エンティティって何?
- オブジェクトやテーブルとどう違うの?
- 具体的な例で教えて!
と思ったことはないでしょうか?
この記事では『エンティティ』について、以下の内容をわかりやすく解説します。
- エンティティとは?
- エンティティの身近な例
- データベースにおけるエンティティ
- エンティティの「属性」とは?
- エンティティと他の用語(属性・レコード・テーブル)の違い
- ER図にも登場する「エンティティ」
エンティティとは?
エンティティ(entity)とは、簡単にいうと「名前がつけられていて、他と区別できるもの」のことです。
もっと身近な言葉で言えば、「モノ」や「コト」のことです。それが「何らかの情報(データ)を持っていて、一つの単位として扱えるもの」であれば、「エンティティ」と呼ぶことができます。
たとえば、こんなものがエンティティです。
- 人 : 「ユーザー」や「お客さん」
- モノ : 「商品」や「製品」
- イベント : 「注文」や「予約」
- 組織 : 「会社」や「部署」
- 場所 : 「店舗」や「倉庫」
このように、現実の世界にある「見えるもの」「起こること」など「はっきりと区別できる存在」をコンピューターの中でデータとして表現しようとするとき、それは「エンティティ」になります。
エンティティの身近な例
もっと具体的な例で見てみましょう。以下は代表的なエンティティの一覧です。
エンティティ名 | 意味・例 |
---|---|
ユーザー(User) | 名前・メールアドレス・年齢などの情報を持つ「人」 |
商品(Product) | 商品名・価格・在庫数などの情報を持つ「モノ」 |
注文(Order) | 注文番号・注文日・注文者などの情報を持つ「イベント」 |
例えば、ユーザーは名前やメールアドレスなどの情報を持っており、一つの単位として扱えるのでエンティティとなります。
データベースにおけるエンティティ
データベース(特にリレーショナルデータベース)では、エンティティはテーブル(表)として表現されることが多いです。
例
- 「ユーザー」エンティティ →
users
テーブル - 「商品」エンティティ →
products
テーブル - 「注文」エンティティ →
orders
テーブル
それぞれのテーブルには、そのエンティティが持つ情報(属性)が「カラム(列)」として格納されます。users
テーブルの一例を以下に示します。
id | name | age | |
1 | 山田太郎 | taro@example.com | 18 |
2 | 鈴木花子 | hanako@example.com | 30 |
エンティティの「属性」とは?
エンティティが持っている情報のことを、属性(attribute)と呼びます。たとえば、先ほど示した「ユーザー」エンティティの場合、
name
(名前)email
(メールアドレス)age
(年齢)
といった項目が属性です。つまり、属性はエンティティの特徴を表す情報であり、テーブルの「列」にあたる部分です。
エンティティと他の用語(属性・レコード・テーブル)の違い
用語が似ていて混乱しがちなので、ここで一度整理しておきましょう。
用語 | 意味 |
---|---|
エンティティ(Entity) | 実体。「ユーザー」「商品」「注文」など、意味のある単位 |
属性(Attribute) | エンティティが持つ情報。名前、価格など |
レコード(Record) | エンティティの個別のデータ。1件分 |
テーブル(Table) | エンティティを一覧にした表形式の構造 |
ER図にも登場する「エンティティ」
データベース設計でよく使われるER図(Entity-Relationship図)でも、「エンティティ」は重要な要素として登場します。
エンティティは四角で表され、その間に「リレーション(関係)」が線で結ばれます。

上図は「1人のユーザーが複数の注文をする」という関係(リレーション)を示しています。ER図は、システムの設計段階で「どんなエンティティが必要か」「それぞれがどうつながっているか」を整理するのに非常に役立ちます。
本記事のまとめ
この記事では『エンティティ』について、以下の内容を説明しました。
- エンティティとは?
- エンティティの身近な例
- データベースにおけるエンティティ
- エンティティの「属性」とは?
- エンティティと他の用語(属性・レコード・テーブル)の違い
- ER図にも登場する「エンティティ」
「エンティティ」とは、「意味のあるデータのまとまり」を指す言葉で、人・モノ・コトなど、現実世界で区別できる存在をコンピューターの中で表現するための考え方です。
- データベースではテーブルとして表現されることが多く、
- 各エンティティは属性(カラム)を持ち、
- 1件1件のデータがレコードとして格納されます。
また、ER図などの設計図でも重要な役割を果たすため、システム開発に関わる人はぜひ覚えておきたい用語のひとつです。
「なんとなく難しそう…」と思っていた方も、今回の記事で少し身近に感じてもらえたら嬉しいです!
お読み頂きありがとうございました。