E-R図(概念設計) -情報処理シンプルまとめ

E-R図に関するブログのアイキャッチ画像 データベース

 基本情報技術者試験など情報処理技術者試験を受験する方にとっては必須の,E-R図についてシンプルにまとめています。はじめに,概念設計の説明をして,それからE-R図の説明をしています。E-R図については,構成要素(エンティティ(実体),リレーションシップ(関連),アトリビュート(属性),カーディナリティ)やインスタンスの説明を行い,その後,カーディナリティ(1対1,1対多,多対多)について詳しく説明しています。難しく感じるかもしれませんが慣れだと思いますので,繰り返し,根気よく読んでマスターしましょう。

概念設計

 データベースの概念設計は,システム開発の上流工程で行われます。データベース化の対象となる実世界のデータを,その意味や関係を崩すことなくモデル化します。一般的には,E-R図を使用してモデル化し,モデル化したものを概念データモデルといいます。概念データモデルは,実装するコンピューターとは独立した(依存しない)ものとします。

E-R図

 E-R図は,データベースの概念設計で用いられます。データベース化の対象となる実世界のデータを,エンティティ(実体)とリレーションシップ(関連)という概念で抽象化します。

E-R図の構成要素

エンティティ(実体)データベース化の対象となる実世界を構成する要素で,いくつかの属性を持つ。物理的な実体だけでなく,抽象的な事象も要素となり得る
リレーションシップ(関連)実世界の規則やルールなどによるエンティティ間の関係。属性を持つこともできる
アトリビュート(属性)エンティティが持つ性質や特性
カーディナリティエンティティ間の対応関係を表したもの。「1対1」,「1対多」,「多対多」といった関係がある

インスタンス

 インスタンスとは,エンティティが持つ属性に具体的な値を持たせたものをいいます。属性の中には,インスタンスを一意に識別できる属性(主キー)があります。

カーディナリティ

 カーディナリティは,エンティティ間の対応関係を表したもので,次の3つがあります。

 「1対多」の対応関係の場合,一般的に,「多」側のエンティティは,「1」側のエンティティの主キーを外部キーとして持ちます。

1対多に関する説明画像

 また,「多対多」の対応関係については,「1対多」の対応関係に変換することができます。

 図のように,リレーションシップである「持ち球」を1つのエンティティとして捉えれば,「多対多」の対応関係を「1対多」の対応関係に変換できます。

 ちなみに,「選手」エンティティや「球種」エンティティのように,独立して存在できるエンティティを強エンティティといい,「持ち球」エンティティのように,他のエンティティ(「選手」エンティティや「球種」エンティティのようなエンティティ)が存在しなければ存在できないエンティティを弱エンティティといいます。

まとめ

 今回は,E-R図について,シンプルにまとめてみました。理解できましたか?難しいようでしたら,続き(関係モデル(論理設計)やデータベース管理システム(DBMS)(物理設計)など)を読んだあと,もう一度,読んでみてください。少しずつ理解できると思います。