テーブル名とカラムを入力してください
Mermaid Live Editor/GitHub/Notionでそのまま描画できます
erDiagram
Confluence・Notion・esa・GitHubに貼り付けてそのまま使えます
# データベース項目定義書
テーブル設計とは
テーブル設計とは、ビジネスで扱うデータを「どの単位(テーブル)で」「どの属性(カラム)で」「どう関連づけて(リレーション)」保持するかを決める作業です。データベースの土台であり、ここでの設計ミスは、後工程のアプリ開発・分析・データ整備すべてに影響します。
本ツールはすべての処理をブラウザ内で実行します。入力したテーブル定義が外部に送信されることはありません。
本ツールが生成する3つの成果物
- 1.CREATE TABLE 文(DDL): MySQL / PostgreSQL 方言に対応。主キー・外部キー制約、カラムコメントも自動出力
- 2.ER図(Mermaid記法): Mermaid Live / GitHub README / Notion / Confluence にそのまま貼れるテキスト形式。SVG描画はツール側で
- 3.Markdown項目定義書: カラム一覧を表形式で。Confluence・Notion・esa等の社内ドキュメントに貼るだけで設計書になる
ER図とは(書き方の基本)
ER図(Entity Relationship Diagram)は、データベース設計で使われる代表的な図法で、エンティティ(テーブル)とエンティティ間のリレーション(関連)を視覚的に表現します。
本ツールで生成されるMermaid記法は、コードで書くER図として近年定着しており、GitHub README や Notion で直接プレビューできます。従来のdraw.io等のGUIで描く方式と違い、Gitでdiff管理できる点が大きな利点です。
Mermaid ERD のリレーション記号
||--o{: 1対多(1件の顧客に対し、複数の注文)||--||: 1対1}o--o{: 多対多(通常は中間テーブルで分解)
本ツールの使い方
- 1.「プリセットを読み込む」でサンプル(顧客・商品・注文の3テーブル)を試すか、「+テーブルを追加」で新規作成
- 2.テーブル名とカラムを入力。PKチェック、FKフィールドに
テーブル名.カラム名形式で参照を書くと、ER図の線も自動生成 - 3.画面下部に DDL・ER図・項目定義書がリアルタイムに生成。必要な出力をコピーして使用
- 4.入力内容はLocalStorageに自動保存。複数日にわたる設計作業もそのまま継続
テーブル設計でよくある失敗
- 命名が統一されていない
user_id / userId / userID が混在すると、後のSQL・プログラムで不具合の温床になる。スネークケースで統一を推奨。 - NULL許容の判断が雑
業務ルール上「必須」の項目でも NULL 可にしてしまうと、データ品質が崩れる。項目ごとに必須性を明確に。 - created_at / updated_at を忘れる
監査・デバッグ・データ取込の時系列追跡で必須。全テーブルに付ける運用を推奨。 - マスタと明細(トランザクション)の区別が曖昧
顧客マスタに注文履歴が混ざる、などの設計は拡張性を損ねる。マスタデータとトランザクションデータの違いを押さえましょう。
マスタ設計で押さえるべき観点
- -一意性: 主キー(PK)は業務上重複しない値を選ぶ。顧客マスタなら連番ID+業務コード併用が定番
- -参照整合性: 外部キー(FK)制約で、参照先の存在を保証。削除時の挙動(CASCADE/RESTRICT/SET NULL)も設計時に決める
- -正規化と非正規化: 重複を排除する正規化が基本。パフォーマンス要件で選択的に非正規化
- -命名規則: テーブル名は複数形(customers)、外部キーは
xxx_id、タイムスタンプはcreated_at / updated_atなど、チーム内で統一ルールを決めておくと運用が楽
よくある質問(FAQ)
Q. MySQLとPostgreSQLの生成DDLはどこが違いますか?
MySQLは識別子を`で、PostgreSQLは"でクォートします。コメントも、MySQLはインラインのCOMMENT句、PostgreSQLはCOMMENT ON ...文で別途出力します。本ツールは両方式に対応しています。
Q. ER図を画像として出力できますか?
本ツールはMermaid記法テキストを生成します。画像として出力する場合は、コピーした内容をMermaid Live Editorに貼り付けると、PNG・SVGでダウンロードできます。GitHub READMEやNotionなら記法のまま貼るだけで描画されます。
Q. 生成されたDDLをそのまま本番DBに流していい?
検証用・新規設計用としてはそのまま使えますが、既存DBのマイグレーションには別途の配慮が必要です(既存データの扱い、ロック、停止時間等)。本番適用前に、DBAや技術リードのレビューを推奨します。
Q. 入力データはどこに保存されますか?
ブラウザのLocalStorageに自動保存されます。サーバーには一切送信されません。機密性の高いスキーマ設計も安心してご利用いただけます。端末やブラウザを変えると引き継がれないため、完成したら別途ドキュメントにコピーしておくことを推奨します。
関連する無料ツール・記事
顧客マスタの整備
名寄せ・重複排除・項目設計のポイント
データモデリング
概念・論理・物理モデルの使い分け
データエンティティとは
設計における役割と関連用語
マスタとトランザクションの違い
テーブル分割の境界線の考え方
データ統合基盤
ETL/ELT・DWH・データレイクの選び方
業務棚卸テンプレート
テーブル設計の前段、業務全体を可視化
設計から実装・運用まで仕組みごと伴走します
マスタ整備、データ基盤、業務連携の設計から定着まで月額で支援。
CONTACT
設計は「始まり」。 運用まで仕組みで支えませんか。
テーブル設計・マスタ整備・データ基盤の構築から、現場で使われ続ける仕組みづくりまで。 まずはお気軽にご相談ください。
※ 営業電話は一切しません。合わなければその場でお断りOKです