データベーススキーマ可視化

CREATE TABLE 文をテーブル、キー、検出された外部キー関係の図に変換します。Mermaid ER ソースをコピーまたはダウンロードできます。

ブラウザ内でローカルに実行
このツールの処理はすべてブラウザ内で行われます。KivTools が入力内容をアップロード・保存したり、外部 API に送信したりすることはありません。
データベーススキーマ DDLPaste CREATE TABLE statements.

貼り付けた CREATE TABLE から Mermaid の ER 図を作る手順

CREATE TABLE 文を 1 つ以上貼り付けると、テーブル・列・外部キーの関係が図になります。出力欄には Mermaid の erDiagram ソース、その下にはページ自身が描画した SVG プレビューが表示されます。

MySQL のバッククォート、PostgreSQL の二重引用符、SQL Server の角括弧、IF NOT EXISTS、schema.table 形式の接頭辞を読み取り、-- と /* */ のコメントは無視します。どこにも送信せず、データベース接続も行いません。

  1. 左の入力欄に DDL を貼り付けるか、サンプルを読み込むを押すと 2 テーブルの例が入ります。
  2. 図を描画を押すと、右側に Mermaid ソース、その下にプレビューが表示されます。
  3. ステータス行を確認します。テーブル数とリレーション数、読み取れなかった DDL の行数が表示されます。
  4. コピーで Mermaid ソースを取り出し、ダウンロードで database-schema.mmd として保存できます。
  5. クリアを押すと、入力欄・出力欄・プレビューがまとめて空になります。

図に表示される内容、対応する方言、そしてこのツールが行わないこと

テーブル・キー・リレーションの線

各テーブルは宣言順に列を並べたカードになります。主キーの列には PK、外部キーに使われる列には FK が付き、複合キーは対象の列すべてに印が付きます。同じキーを列側の REFERENCES と表側の FOREIGN KEY の両方で書いても 1 件として数え、線も 1 本だけ引きます。

線は参照される側のテーブルからキーを宣言する側へ伸び、ラベルにはキーの列名が入ります。users ||--o{ projects : "owner_id" は「1 人のユーザーが複数のプロジェクトを持つ」という意味です。線はカードの外枠から出入りし、自己参照はカードの右側を回るため、表の本体を横切る線はありません。

同名テーブル・存在しない参照先・読めない行

名前だけではテーブルを特定できません。a.users と b.users が同じ入力にある場合、Mermaid ソースでは users と users_2 という別々のエンティティになり、カードの見出しにはスキーマ付きの名前が残ります。貼り付けた DDL にないテーブルを参照する外部キーは、線を残したまま破線のプレースホルダーとして表示します。

読み取れなかった内容は黙って捨てません。ステータス行に、解析できなかった DDL の行数と、貼り付けた範囲の外を指すリレーションの件数が出ます。CREATE TABLE が 1 つも含まれない場合は、前回の図を残さずに両方の欄を空にして理由を表示します。

このツールが行わないこと、端末内で完結すること

これは図の生成ツールであり、データベースクライアントではありません。サーバーへの接続、SQL の実行、稼働中スキーマの取得、マイグレーションの生成は行いません。貼り付けたテキストだけを図にし、Mermaid ソースはドキュメントやレビューでの利用を想定しています。

処理はすべてブラウザ内で完結し、ページを読み込んだあとに追加の通信は発生せず、オフラインでも動作します。コピーとダウンロードは描画が済むまで動作しないため、空のクリップボードや 0 バイトのファイルを結果と誤認することはありません。図の大きさはタブのメモリだけに依存します。

最近使ったツール: