database-design

Installation
SKILL.md

Database Design

DB の命名は、タスクに名前を付けることではない。永続化する概念を抽象化し、その概念に名前を付けることである。

DB スキーマは、現在の処理・画面・連携・入出力の都合ではなく、ドメイン上の事実、entity、属性、関係、状態を表す。名前が特定用途に結びつきすぎると、用途が増えた時点で名前が嘘になり、局所最適化されたテーブルやカラムが増える。


原則

1. 用途ではなく概念を名付ける

命名前に、現在の処理目的・画面名・連携元・入出力形式をいったん取り除く。残ったものが、DB に保存すべき概念である。

テーブル名・カラム名は「何のために使うか」ではなく、「何であるか」を表す。

2. 分離はモデル構造から判断する

正規化やテーブル分割は、用途があるからではなく、独立した entity、属性、関係、ライフサイクル、制約、cardinality を表す必要があるときに行う。

Related skills

More from efoo-team/skills

Installs
12
First Seen
Apr 27, 2026