実体関係図(ER図)とは、開発者などが利用する重要なツールであり、データベース内の異なるデータの関係を視覚的に表したものです。ER図を正確に描くには、実体とは何かを正しく理解し、実体間の関係を把握しなければなりません。
そこで、本記事ではDBMSにおいての実体及び実体関係図(ER図)に関する知っておくべきことをご紹介します。
1. DBMSにおいての「実体」とは何か
まずは基本から始めましょう。DBMS(データベース管理システム)においての「実体」とは何でしょうか?実体とは基本的に、実在していてかつ実世界にある他のオブジェクトと簡単に区別ができるオブジェクトのことです。
例えば、従業員は実体です。企業のデータベースでは、従業員、顧客、部署などがこれに該当します。
さらに、実体は「属性」と呼ばれる特定の性質を持ちます。属性は、各実体の性質を表しています。属性によって実体の特性が決まるため、実体を区別することができます。
例えば、従業員を実体とみなす場合、雇用者識別番号、年齢、携帯電話番号、性別、名前などがその属性にあたります。
実体には、有形実体と無形実体の2種類があります。有形実体とは、実世界に物理的に存在し、書類や車など触れることができるものを指します。一方で、無形実体とは、実世界に存在するが、物理的には存在しないため触れることができないものを指します。例えば、メールアドレス、社会保障番号、電話番号などがこれにあたります。
2. DBMSにおいての実体の種類
DBMSにおいて、実体には強実体と弱実体の2種類があります。
2.1 強実体
強実体は通常、主キーを持ち、他の実体の存在に依存することなく独立しています。
例えば、顧客データベースの場合、「顧客」が強実体となります。顧客IDは、特有の番号でありデータベース内で複製することはできないため、主キー属性となります。
2.2 弱実体
一方、弱実体は主キーを持たないため、親実体に依存しています。基本的に、弱実体は親実体からの外部キー以外に意味のある属性を持ちません。
例えば、顧客データベースにおいての「注文」は、注文番号や配送品などの属性をいくつか持っているにもかかわらず、親実体である「顧客」にのみ依存しているため、弱実体となります。
3. DBMSにおいての実体、実体集合、実体型とは
3.1 DBMSにおいての実体集合とは
DBMSにおいて、実体集合とは基本的に似た種類の実体を集めたものを指します。ER図では通常、実体集合を長方形で表します。実体集合の例としては、特定期間においてのCRMの顧客や、特定の時間帯において従業員表から集めた従業員全員があります。実体集合は、ビジネスインテリジェンス、データマイニング、重要な意思決定のためのデータ活用など、データベースの応用に便利です。
個々の実体と同様に、実体集合も以下の2種類に分類されます。
- 強実体集合:強実体集合は、主キーを持っており依存せずに存在できるため、他の実体を必要とせずにDBMSに存在する。
- 弱実体集合:弱実体集合は、主キーを持たないため、他の実体に依存して存在する。
3.2 DBMSにおいての実体型とは
ご存知の通り、実体とは実世界に存在する特有のオブジェクトのことで、人や物を表します。しかし、実体型は、情報が保存されている人または物の種類を表します。実体型は基本的に、情報の種類や、DBMSの1つまたは複数の関連テーブルにどう一致するかを示しています。
3.3 詳細な比較
実体 | 実体型 | 実体集合 |
---|---|---|
実世界に存在する独立した人または物 | 実体は、一組の属性で表すため区別することが可能 | 関係データベース管理システム(RDBMS)において、テーブル内の特定の行を実体とみなす |
特定の実体が持つ特定の種類またはカテゴリ | 実体型は通常、データを構成するテーブル名で表される | RDBMSにおいて、関連テーブル名が実体型を表している |
特定の種類に属する一組の実体またはグループ | 実体集合において、実体の種類はすべて同じである | RDBMSにおいて、関連デーブルの 2 つ以上の行を実体集合と見なす |
4. DBMSにおける実体の例
DMBSに存在する実世界のオブジェクトを例にとって説明しましょう。この例では、大学のデータベースを取り上げ、教授や学生などをその実体とします。
ここで注目するべき主な実体は、教授です。この教授の属性(実体を示す特定の性質)を、教授ID、名前、住所、および給与とすることが可能です。この例では、教授IDが主キーであることに注意しましょう。
この理解に基づき、教授は主キーである教授IDを持つため、ここでの強実体は教授となります。また、強実体は長方形で表されます。一方で、弱実体は親実体に依存する学生であり、二重長方形で表されます。
ER図を組み立てると、以下のような図表になります。
上記のER図は無料作図ツールboardmixで作成しました。
まとめ
ER図においての「実体」を理解するのは簡単ですし、DBMSでフローチャートを効果的に作成するのに役立ちます。DBMSの実体とは、実世界に存在するオブジェクトのことで、区別することができ、特有のものです。実体、実体集合、および属性について理解したところで、学んだことを応用して簡単に最適なER図を作成することができるでしょう。