ブログ

DBeaverでER図を出す方法と、その先

DBeaverを使っているなら、ER図のために別のソフトを入れる必要はありません。もう入っています。テーブルをダブルクリックすればダイアグラムのタブがあり、数クリックでPNGに書き出して会議資料に貼れます。

DBeaverでは、単一テーブルの関係を見る場合、スキーマ全体を見る場合、必要なテーブルだけを集める場合で開き方が異なります。画像出力までの操作と、定義書・共有・設計に別の手段が必要になる範囲を分けて確認します。MySQL Workbenchの手順はWorkbenchの案内にあります。

ER図を開く3つの方法

テーブル1つの関係図。 データベースナビゲーターでテーブルをダブルクリックしてエディタを開くと、ダイアグラム(ER Diagram)のタブがあります。そのテーブルとFKでつながる周辺テーブルまで一緒に描いてくれるので、「このテーブル、どこにぶら下がってるんだっけ?」を確かめる用途ならこれが一番速いです。

スキーマ全体。 ナビゲーターでスキーマ名またはTablesノードをダブルクリックすると、スキーマ単位の図が開きます。引き継いだDBの全体構造を最初にざっと眺めるときの方法です。リレーション線の端の記号が読めないときは、ER図の記号まとめを横に置いて読むとよいです。

必要なテーブルだけ集めるカスタムダイアグラム。 新しいER図を作って、必要なテーブルだけを置いていく方式です。スキーマ全体が数百テーブルあっても、注文ドメインの10個だけ抜き出して見られますし、別々の接続のテーブルを1枚に混ぜることもできます。

見やすく整える

開いた直後の配置が気に入らなければ、自動整列を一度かけるのが早いです。重なったテーブルが読める間隔に並び直されます。そこからさらに整えたければテーブルをドラッグして動かせばよく、グリッドに合わせるスナップもあります。

図の上にメモを残すノート機能もあります。「このテーブルは2024年以降未使用」のような一行を図の上に残しておくと、画像に書き出したときにその文脈も一緒に伝わります。

なお、ダイアグラムは既定で読み取り専用です。スキーマを変更する編集モードはEnterprise・Ultimateエディションでのみ提供されます。変更内容はSQLスクリプトに変換されるため、本番DBへ適用する前に確認が必要です。

画像に書き出す

整えた図はファイルに書き出せます。PNG・GIF・BMP、そして他の作図ツールで開けるGraphMLまでが無料版の範囲で、公式ドキュメント基準ではSVG書き出しにProの表示が付いています。

会議資料やWikiに貼るDBeaverのER図ならPNGが扱いやすい形式です。ダイアグラムを開き、自動整列で配置を整えてから書き出します。

DBeaverの持ち場と、その先

ここからは線引きの話です。DBeaverのダイアグラムは、DBに接続している人が構造を確かめる道具としてはとても良くできています。その外側の仕事が始まると、手数が増えます。

共有が繰り返し作業になります。 図を見られるのはDBに接続した人だけなので、接続権限のない企画担当や新しいメンバーには画像を書き出して渡すことになります。スキーマが変わるたびに、同じ書き出しを繰り返すことになります。

定義書は別で作ることになります。 DBeaverでテーブル定義書を出力する機能はダイアグラムの書き出しには含まれません。検収・納品用のテーブル定義書が必要なら、DDLを使う別の手順が必要です。

Community版では設計の編集ができません。 無料版のダイアグラムは現在のDBを確認して整理するための機能です。図の上で新しいテーブル、カラム、外部キーを作るには、Enterprise・Ultimateエディションの編集モードが必要です。

構造確認とクエリはDBeaverで続け、共有・定義書・設計が必要なときだけDDLを別のツールへ渡せば、作業環境を入れ替える必要はありません。

DBeaverでテーブルを選んで右クリック → DDLの生成を押せば、CREATE TABLE文がすぐ出てきます。それをWorksCove ERDに貼り付ければ編集できる図になり、同じデータからテーブル定義書が出て、リンクひとつで接続権限のない人にも共有できます。全体の流れはSQLからER図を自動生成するに画面付きでありますし、定義書のほうが急ぎならテーブル定義書の作り方から読むのもよいと思います。

DBeaverでの構造確認はそのまま残し、接続権限のない人への共有や定義書作成だけをDDL経由で分けられます。

よくある質問

無料(Community)版でもER図を出せますか?

出せます。図の表示、自動整列、PNG・GIF・BMP・GraphMLへの書き出しまで無料版で使えます。公式ドキュメント基準では、SVG書き出しにだけProの表示が付いています。

スキーマ全体ではなく、テーブルを数個だけ選んで描けますか?

カスタムダイアグラムがその用途です。新しいER図を作って必要なテーブルだけを配置でき、別々の接続のテーブルを1枚に混ぜることもできます。中核ドメインだけ抜き出して見たいときに便利です。

図の上でテーブル構造を修正することもできますか?

可能ですが、編集モードはEnterprise・Ultimateエディションの機能です。Community版のダイアグラムは構造の確認、配置、書き出しに使います。有料版で編集した変更はSQLスクリプトになるため、DBへ適用する前に必ず確認してください。

テーブル定義書もDBeaverから出せますか?

ダイアグラム機能の書き出しは画像とGraphMLまでです。検収・納品用の定義書が必要なら、DBeaverでDDLを生成して、定義書を自動生成できるツールに貼り付けるのが最短ルートです。

DBeaverのダイアグラムは接続中のDB構造を確認する用途に向きます。DBeaverを使えない人への共有やテーブル定義書が必要なら、右クリック → DDLの生成でスキーマを取り出して別のツールへ渡せます。