ErdDocs

ER図のサンプル

よく課題に出るシステムのデータベース設計を、そのまま動く SQL とともに載せています。各ページで ER図とテーブル定義書が無料で全体表示され、SQL はコピーして使えます。

記法が初めてなら、コピーする前に ER図とは のページで箱と線端の意味を確認してください。

これらのサンプルは英語のページで開きます。日本語に訳してあるのは上の三つです。

コピーする前によくある質問

データベーススキーマの主な種類は?

よく挙がる名前は四つです。フラット型(テーブル一つでリレーションなし)、階層型(厳密な親子の木構造)、ネットワーク型(レコードが複数の親を持てる)、リレーショナル型(キーで結ばれたテーブル)です。下のサンプルはすべてリレーショナル型です。PostgreSQL、MySQL、SQL Server、SQLite がそれにあたるからです。残りの三つは、ほとんどが歴史上のものか、そもそもテーブルで作られていないドキュメント DB やグラフ DB を説明するための言い方です。

これらのスキーマを自分のプロジェクトや課題に使ってもいいですか?

はい。各ページに SQL の全文があり、PostgreSQL でそのまま動きます。これらは本番用ではなく学習用のスキーマです。どれも一度に読み切れる大きさです。どれも一つの設計判断を軸にしていて、その判断はまねしてもいいし、反論してもかまいません。課題では反論も同じくらい役に立ちます。

サンプルを自分のデータベースの ER図にするには?

SQL を差し替えます。pg_dump --schema-only か mysqldump --no-data でスキーマを書き出し、サンプルの上に貼り付けてください。Prisma スキーマ、DBML、Mermaid、PlantUML、Django・SQLAlchemy・Sequelize・TypeORM のモデルも貼り付けられます。形式は貼り付けた内容から判定します。何もアップロードされません。解析はブラウザの中で行われます。

どのサンプルから始めればいいですか?

5 つのテーブルですべての種類のリレーションを見たいなら、ブログのスキーマから始めましょう。自分のデータを持つ中間テーブルが必要なら EC サイトを。問題の本質が時間なら、ホテルか図書館のスキーマを。予約・貸出・空き状況は、初心者がクエリをカラムとして設計してしまいがちなところです。SQL の授業で出会うデータベースなら、Northwind か Chinook から。実際の会社に近い形なら AdventureWorks を選んでください。

ご自身のスキーマがあるなら、トップページに貼り付けてください。同じツールで、あなたのテーブルが描けます。印刷できる資料は、テーブル定義書の自動生成で作れます。