EntityとAttributeの違いとは?分かりやすく解説!

この記事には、アフィリエイト広告を利用しています。

スポンサーリンク


エンティティとアトリビュートの主な違いは、エンティティがRDBMSのデータを表す実世界のオブジェクトであるのに対して、アトリビュートはエンティティを記述するプロパティであることです。

リレーショナルデータベース管理システム(RDBMS)は、リレーショナルモデルに基づくデータベース管理システムの一種である。

RDBMSはデータを効率的に保存・管理し、簡単にアクセスできるよう支援する。

RDBMSはデータをテーブルやリレーションに格納する。

各テーブルは列と行で構成されています。

データベースを作成する前に、データベースを設計することが不可欠です。

ER 図は、その作業を支援するものです。

ER 図に関連する概念として、エンティティとアトリビュートがあります。

スポンサーリンク

エンティティーとは

エンティティとは、RDBMSでデータを表現する実世界のオブジェクトのことです。

たとえば、大学管理システムを想定する。

そこには、学生、講師、コース、試験などの情報が格納されている。

学生、講師、コース、試験はデータベースのテーブルとなる。

学生テーブルのレコードは、エンティティと呼ばれます。

それは、単一の学生のオブジェクトを表します。

同様に、講師テーブルのレコードは、エンティティです。

これは、1人の講師オブジェクトを表します。

これらのエンティティは、強いエンティティと呼ばれます。

もう一つのエンティティタイプとして、弱いエンティティがあります。

弱いエンティティは、他のエンティティに依存します。

例えば、試験のエンティティは、コースのエンティティに依存します。

つまり、弱いエンティティです。

ER図では、エンティティを矩形で表現することができる。

また、弱いエンティティは、二重の長方形の枠を使って表現することができます。

アトリビュートとは

属性とは、エンティティを記述するプロパティです。

もう一度、大学管理システムの例を見てみましょう。

学生エンティティは、学生ID、名前、年齢、住所、GPAなどの属性を持っています。

コースのエンティティは、コースID、コース名、期間などの属性を持っています。

さらに、試験エンティティは、試験番号、日付、開始時刻、終了時刻などの属性を持つ。

このように、属性にはさまざまな種類があります。

それらは以下の通りです。

単純な属性 – 単純な属性をさらに分割することはできません。

複合属性 – 単純な属性を複数組み合わせたもの。

例)-名前は、ファーストネーム、ミドルネーム、ラストネームで構成される。

住所は、家屋番号、通り名、市区町村などから構成される。

単一値属性 – 一つの値しか持つことができない。

多値属性 – この属性には複数の値を設定することができます。

派生属性 – この属性はRDBMSでは利用できないが、他の属性を使ってこの属性を見つけることができる。

例:生年月日から年齢を求めることができる。

ER図では、属性を楕円で表現する。

派生属性は、楕円の内側に点線の楕円を描いて表現する。

また、多値の属性は二重の楕円で表わされる。

データベースでは、テーブルのカラムが属性となる。

エンティティとアトリビュートの違い

定義

エンティティとは、RDBMSにおいて情報をモデル化して保存するためのオブジェクトであり、アトリビュートとはエンティティを定義するための特徴です。

したがって、これがEntityとAttributeの主な違いです。

機能性

さらに、EntityとAttributeのもう一つの違いは、EntityがRDBMSの主要な対象を表すのに対して、Attributeはその対象を記述することである。

テーブル

また、エンティティはテーブルの行またはレコードであるのに対し、属性はテーブルのカラムです。

結論

RDBMS は最も広く利用されているデータベース管理システムの一つです。

しかし、データベースを開発する前に設計することが必要である。

ER図にはEntityとAttributeが関係する。

EntityとAttributeの大きな違いは、EntityがRDBMSのデータを表す実世界のオブジェクトであるのに対して、Attributeはエンティティを記述するプロパティであることである。

タイトルとURLをコピーしました