ERDで最初のエンティティを作成する
ER図で最初のエンティティ(テーブル)を作成する方法を学びます。エンティティの命名、データ型を持つカラムの定義、主キーの設定を解説します。
ERD Basics
詳細な説明
エンティティとは?
ERモデリングにおいて、エンティティはデータを保存したい現実世界のオブジェクトや概念を表します。リレーショナルデータベースの用語では、エンティティは直接テーブルにマッピングされます。各エンティティは名前と、そのプロパティを記述する属性(カラム)のセットを持ちます。
エンティティの構造
適切に定義されたエンティティには以下が含まれます:
| コンポーネント | 目的 | 例 |
|---|---|---|
| エンティティ名 | テーブルを識別 | users |
| 主キー | 各行を一意に識別 | id SERIAL |
| 属性 | エンティティに関するデータ | name VARCHAR(255) |
| データ型 | 各カラムが保持するデータの種類を定義 | INT、TEXT、BOOLEAN |
| 制約 | NOT NULL、UNIQUEなどのルール | email VARCHAR(320) NOT NULL UNIQUE |
ステップバイステップ:最初のエンティティの作成
明確な名前を選ぶ:
snake_caseの複数形名詞を使用します(例:users、products、order_items)。名前はテーブルが何のコレクションを格納するかを説明するものにします。主キーを定義: ほぼすべてのエンティティに主キーカラムが必要です。最も一般的なパターン:
id SERIAL— 自動増分整数(PostgreSQL)id INT AUTO_INCREMENT— 自動増分整数(MySQL)id UUID— ユニバーサルユニーク識別子
属性を追加: 保存する必要があるデータについて考えます。各属性はデータ型を持つカラムになります。まず必須カラムから始めて、後から追加します。
制約を設定: 必須カラムは
NOT NULL、値が重複してはいけないカラムはUNIQUEとし、必要に応じてDEFAULT値を設定します。
例:シンプルなUsersエンティティ
CREATE TABLE users (
id SERIAL PRIMARY KEY,
username VARCHAR(255) NOT NULL UNIQUE,
email VARCHAR(320) NOT NULL UNIQUE,
is_active BOOLEAN NOT NULL DEFAULT true,
created_at TIMESTAMP NOT NULL DEFAULT NOW()
);
ERDエディタでは、このエンティティはヘッダーにテーブル名、その下に各カラムがリスト表示されるカードとして表示されます。キータイプに応じて色分けされます:主キー(id)はゴールド、通常のカラムはデフォルトの色です。
ユースケース
新しいプロジェクトを始めてデータベースをゼロから設計する必要がある場合。最初のエンティティの作成(通常はusers、products、eventsなどの中心的なエンティティ)は、他のすべてのテーブルとリレーションシップが構築される基盤となります。