無料の SQL→ER 図ツール、ブラウザで動作し何もアップロードしない
(sqltoerdiagram.com)- SQL スキーマを貼り付けると、ブラウザ内でテーブル、カラム、キー、リレーションを即座に ERD として可視化
- PostgreSQL、MySQL、SQLite、SQL Server の
CREATE TABLEとALTER TABLEDDL を解析し、主キー・外部キー、unique、not-null 制約を処理 - テーブルのドラッグ、自動配置、メモ追加、ズーム、ダブルクリックでの名前変更など、インタラクティブ編集をサポート
- 結果は高解像度 PNG、ベクター SVG、プロジェクトファイル、URL に図をエンコードした 共有リンクとしてエクスポート可能
- アカウント、登録、インストール不要で、SQL スキーマはサーバーにアップロードも保存もされず、ローカル実行に重点を置く
SQL を貼り付け、スキーマを見る
- 左側のエディタに
CREATE TABLE文を入力すると、SQL スキーマが ER 図として表示される - サンプルスキーマは小規模な EC 構造で、users、addresses、products、orders、order_items、reviews の 6 テーブルと 7 リレーションで構成される
- テーブルはドラッグ可能で、スクロールでズームでき、ダブルクリックで名前を変更して完了後にエクスポートできる
- サンプルスキーマを読み込む機能があり、画面にはズーム率 122% が表示される
- すべての処理はブラウザで 100% ローカル実行され、スキーマはブラウザの外に出ない
SQL to ER Diagram — 無料オンライン ERD ジェネレーター
- SQL to ER Diagram は、SQL スキーマをブラウザ内で インタラクティブ ERD に変換する無料のオープンソースツール
CREATE TABLE文を貼り付けると、テーブル、カラム、主キー、外部キー、リレーションを即座に可視化- PostgreSQL、MySQL、SQLite、SQL Server で動作
- テーブルのドラッグ、自動レイアウト整列、メモ追加、PNG または SVG へのエクスポートをサポート
- 何もアップロードされず、スキーマはユーザーのデバイスに残る
よくある質問
- SQL から ER 図を作成するには、エディタに SQL の
CREATE TABLE文を貼り付ければよく、ツールがインタラクティブ ERD を即座にレンダリングする- テーブルをドラッグして配置したあと、PNG または SVG としてエクスポートできる
- 対応 SQL 方言は PostgreSQL、MySQL、SQLite、SQL Server で、標準的な
CREATE TABLEとALTER TABLEDDL を解析する- 主キー、外部キー、unique、not-null 制約を処理する
- SQL to ER Diagram は完全無料かつオープンソースで、アカウントや登録は不要
- すべての作業はブラウザでローカル実行され、SQL スキーマはサーバーにアップロードも保存もされない
- 図は高解像度 PNG、ベクター SVG、完全なプロジェクトファイル、URL に図をエンコードした共有リンクとしてエクスポートできる
- インストール不要で、デスクトップとモバイルの Web ブラウザで動作する
1件のコメント
Hacker Newsのコメント
数か月前に v0 と一緒に作ったツール https://v0-yaerd.vercel.app を思い出した
Laravel のマイグレーションファイルを解釈して ERD を作れるツールを見かけなかったので作り、その後プロンプトで基本的な SQL サポートも追加した
ツールはとても素晴らしいが、SQL だけでは ER 図は作れないと思う
エンティティとテーブルは根本的に異なり、非常によく似てはいても、SQL だけでは ER 図を作るのに十分な情報がない
このツールが役に立たないとか、この種の図が有用でないという意味ではなく、やや原論的な話なので他の人は同意しないかもしれない
もちろん DDL がエンティティのライフサイクルについて多くを語るわけではないが、関係・フィールド・カーディナリティをグラフで表す程度が基準なら十分に見える
最近はこの違いを気にする人はあまり多くないようだ
すでに DB は存在するが ERD がなく、ドキュメントもほとんどないことがある
だから探索ツールに近く、理想的にはビューを作成してメモを付けられるべきだ
テーブル数が非常に多かったり、外部キーが欠けたテーブルが多いときに、全体 ERD を一度に見なくて済むからだ
実務的にはほぼ置き換えて使えるが、概念的にはエンティティと関係の上にもっと豊かな意味の層があるようにも思える
たとえば関係に対する説明や、エンティティに付く追加注釈のようなものだ
エンティティは常にテーブルと1:1 の関係だと理解していたので、例があるととてもありがたい
モバイルでの使い勝手は 100 点満点で 1000 点だ
パン、拡大縮小、選択、移動があまりに滑らかで、自分の勘違いかと思った
複雑な問題を単純な解法へ磨き上げる開発者が好きだが、この開発者は本当にすごい
開発者に送れるこれ以上の賛辞は思いつかない
ERD 以外にもこのダイアグラム機能を使える場面が多そうだ
ダブルタップで編集しても拡大縮小レベルがリセットされない
これまで見たモバイル向けサイトの中でも間違いなくトップクラスだ
大したものではなく小さなツールだが、他の人にも役立つと思った
データベーススキーマを可視化しなければならないことが何度もあったが、たいていのツールには有料の壁、必須登録、SQL を他人のサーバーへ送らなければならない問題があった
バックエンドなし、アカウントなし、データは自分の端末から出ない
実装で面白かった点もある。DOM/SVG の代わりにテーブルをキャッシュされたビットマップへラスタライズし、ビューポートカリングを使って、画面上に何百ものテーブルがあっても滑らかさを保っている
SQL パーサーはすべてのトークンのソース範囲を追跡しているので、テーブル名変更のような編集でも関連する識別子と参照だけを正確に変更し、コメントとフォーマットはそのまま維持する
URL にスキーマ全体が入り、共有はスキーマを URL 自体にシリアライズする方式なので、バックエンド・保存状態・アカウントが不要だ
Rust/WASM 版も試したが、JS↔WASM 境界のコストが計算節約分より大きく、パーサーは約 37% 遅くなった。一方で O(n^2) の重なり解消パスは約 2.2 倍速くなった
結局は純粋な JavaScript のままにしており、フレームワークなしで gzip ベース約 32KB だ
ライセンスが明示されていなければ、オープンソースではあり得ても自由ソフトウェアではない
「すべての送信者と受信者は、プロトコル要素内で少なくとも 8000 オクテット長の URI をサポートすることが推奨される。」
https://www.rfc-editor.org/rfc/rfc9110#section-4.1-5
レスポンシブでクリーンで、登録の壁がないオンボーディング体験が素晴らしい
「エンティティ vs テーブル」の区別は実際に存在するが、既存スキーマを素早く可視化したい大多数の開発者にとっては、これで十分だと思う
ここでは完全さは有用さの敵だ
ほとんどの人は ORM 抽象化を作りたいのではなく、何が何とつながっているかを見たいだけだ
https://explain.dalibo.com/ を思い出す
クエリ実行計画を可視化するツールで、SQL クエリ最適化に使ったツールの中でも最も有用なものの一つだった
機密データに使うなら、下の完全オフラインな v2 版をダウンロードするのがよい
直線と90 度に折れた線のオプションもあるとよい
曲線はあまり好きではないが、見た目は美しく、よくできている
これらの SVG を CLI で生成する方法があるのか気になる
本当に気に入っているし、似た機能を持つ VSCode の Postgres 拡張も良かったが VSCode に縛られている
やはりリポジトリに入れておける、エクスポート可能な CLI オプションがない
https://github.com/ondras/wwwsqldesigner を使っているが、比較対象として考慮する価値があると思う
あのプロジェクトは本当に好きで、最初期のサーバーサイド JS 実装の一つだった
自分だけがフォロワーだったのかもしれないが、Ondřej、仕事ぶりは本当に素晴らしかった
悪くないが、GitHub に LICENSE ファイルがない: https://github.com/royalbhati/sqltoerdiagram