エンティティとは?「意味」や「属性やレコードとの違い」を解説!

エンティティ(entity)」という言葉、ITやデータベースの話をしているとよく登場しますよね。

でも、

  • エンティティって何?
  • オブジェクトやテーブルとどう違うの?
  • 具体的な例で教えて!

と思ったことはないでしょうか?

この記事では『エンティティ』について、以下の内容をわかりやすく解説します。

  • エンティティとは?
  • エンティティの身近な例
  • データベースにおけるエンティティ
  • エンティティの「属性」とは?
  • エンティティと他の用語(属性・レコード・テーブル)の違い
  • ER図にも登場する「エンティティ」

エンティティとは?

エンティティ(entity)とは、簡単にいうと「名前がつけられていて、他と区別できるもの」のことです。

もっと身近な言葉で言えば、「モノ」や「コト」のことです。それが「何らかの情報(データ)を持っていて、一つの単位として扱えるもの」であれば、「エンティティ」と呼ぶことができます。

たとえば、こんなものがエンティティです。

  • : 「ユーザー」や「お客さん」
  • モノ : 「商品」や「製品」
  • イベント : 「注文」や「予約」
  • 組織 : 「会社」や「部署」
  • 場所 : 「店舗」や「倉庫」

このように、現実の世界にある「見えるもの」「起こること」など「はっきりと区別できる存在」をコンピューターの中でデータとして表現しようとするとき、それは「エンティティ」になります。

エンティティの身近な例

もっと具体的な例で見てみましょう。以下は代表的なエンティティの一覧です。

エンティティ名意味・例
ユーザー(User)名前・メールアドレス・年齢などの情報を持つ「人」
商品(Product)商品名・価格・在庫数などの情報を持つ「モノ」
注文(Order)注文番号・注文日・注文者などの情報を持つ「イベント」

例えば、ユーザーは名前やメールアドレスなどの情報を持っており、一つの単位として扱えるのでエンティティとなります。

データベースにおけるエンティティ

データベース(特にリレーショナルデータベース)では、エンティティはテーブル(表)として表現されることが多いです。

  • 「ユーザー」エンティティ → usersテーブル
  • 「商品」エンティティ → productsテーブル
  • 「注文」エンティティ → ordersテーブル

それぞれのテーブルには、そのエンティティが持つ情報(属性)が「カラム(列)」として格納されます。usersテーブルの一例を以下に示します。

idnameemailage
1山田太郎taro@example.com18
2鈴木花子hanako@example.com30

エンティティの「属性」とは?

エンティティが持っている情報のことを、属性(attribute)と呼びます。たとえば、先ほど示した「ユーザー」エンティティの場合、

  • name(名前)
  • email(メールアドレス)
  • age(年齢)

といった項目が属性です。つまり、属性はエンティティの特徴を表す情報であり、テーブルの「列」にあたる部分です。

エンティティと他の用語(属性・レコード・テーブル)の違い

用語が似ていて混乱しがちなので、ここで一度整理しておきましょう。

用語意味
エンティティ(Entity)実体。「ユーザー」「商品」「注文」など、意味のある単位
属性(Attribute)エンティティが持つ情報。名前、価格など
レコード(Record)エンティティの個別のデータ。1件分
テーブル(Table)エンティティを一覧にした表形式の構造

ER図にも登場する「エンティティ」

データベース設計でよく使われるER図(Entity-Relationship図)でも、「エンティティ」は重要な要素として登場します。

エンティティは四角で表され、その間に「リレーション(関係)」が線で結ばれます。

ER図にも登場する「エンティティ」

上図は「1人のユーザーが複数の注文をする」という関係(リレーション)を示しています。ER図は、システムの設計段階で「どんなエンティティが必要か」「それぞれがどうつながっているか」を整理するのに非常に役立ちます。

本記事のまとめ

この記事では『エンティティ』について、以下の内容を説明しました。

  • エンティティとは?
  • エンティティの身近な例
  • データベースにおけるエンティティ
  • エンティティの「属性」とは?
  • エンティティと他の用語(属性・レコード・テーブル)の違い
  • ER図にも登場する「エンティティ」

「エンティティ」とは、「意味のあるデータのまとまり」を指す言葉で、人・モノ・コトなど、現実世界で区別できる存在をコンピューターの中で表現するための考え方です。

  • データベースではテーブルとして表現されることが多く、
  • 各エンティティは属性(カラム)を持ち、
  • 1件1件のデータがレコードとして格納されます。

また、ER図などの設計図でも重要な役割を果たすため、システム開発に関わる人はぜひ覚えておきたい用語のひとつです。

「なんとなく難しそう…」と思っていた方も、今回の記事で少し身近に感じてもらえたら嬉しいです!

お読み頂きありがとうございました。

スポンサーリンク