akiyoko blog

akiyoko の IT技術系ブログです

PyCharm のデータベースツールが最強。ER図も簡単に書き出せるよ

はじめに

Django アプリを開発するのに、Mac 版 PyCharm を使っています。

PyCharm のデータベースツールを使うと、レコードの内容をテーブル表示、コンソールからSQL実行など、Sequel Pro で出来ることはほぼ代替できるし、ER図も書き出せてすごく便利です。


ちなみに、データベースはいつも MySQL を使っているのですが、それ以外にも PostgreSQL やその他のほとんどのデータベースでも利用可能です。


バージョン

  • Mac OS X 10.10.5
  • PyCharm (Professional Edition) 5.0.4


なお、PyCharm のデータベースツールは、Professional 版でしか使えません。
PyCharm :: Editions Comparison



 

MySQL の接続設定

Database ペインを表示します。

f:id:akiyoko:20160313131736p:plain

[+] アイコン > [Data Source] > [MySQL] を選択します。

f:id:akiyoko:20160313131757p:plain

JDBC Driver(MySQL Connector/J)がインストールされていない場合は、「Download missing driver files」の「Download」リンクをクリックするだけでインストールが完了します。

f:id:akiyoko:20160313131814p:plain


MySQL の接続設定をします。

以下の設定は、次の場合を想定しています。

  • Ubuntu 14.04 LTS(on Vagrant)
    • IPアドレス:192.168.33.103
    • ログインユーザ:vagrant
  • データベース
    • データベース名:myproject
    • データベースユーザ名:myprojectuser

f:id:akiyoko:20160313131834p:plain
f:id:akiyoko:20160313131850p:plain

接続テストが OK なら、接続設定を完了させます。
f:id:akiyoko:20160313131907p:plain

Database ペインに、テーブルが一覧表示されます。
f:id:akiyoko:20160313131923p:plain



 

データベース操作

データベース名をクリックするとテーブルのレコードが一覧表示され、そこから直接レコードを更新することもできます。
f:id:akiyoko:20160313131945p:plain


SQLコンソールを開くこともできます。
f:id:akiyoko:20160313132005p:plain

テーブル名などの自動補完が効いています。
f:id:akiyoko:20160313132044p:plain

SQLコマンドの実行は、⌘ + enter 。
f:id:akiyoko:20160313132142p:plain


 

ER図の書き出し

データベース名を右クリックして、[Diagrams] > [Show Visualization] を選択すると、ER図を書き出すことができます。

試しに、auth 系テーブルの ER図を書き出してみます。
f:id:akiyoko:20160313132159p:plain

f:id:akiyoko:20160313132240p:plain

すごく簡単です。


ER図のレイアウトが PyCharmデフォルトでいくつか用意されています。右クリックから [Layout] で変更することができます。
f:id:akiyoko:20160313132258p:plain


PyCharm デフォルトのレイアウトをいくつかチェックしてみます。

Circular
f:id:akiyoko:20160313132335p:plain

Hierarchic Group
f:id:akiyoko:20160313132412p:plain

Organic
f:id:akiyoko:20160313132438p:plain

Orthogonal
f:id:akiyoko:20160313132510p:plain

Directed Orthogonal
f:id:akiyoko:20160313132531p:plain


 

まとめ

PyCharm のデータベースツールは、テーブルの操作は当たり前として、JDBC Driver のインストールから ER図も書き出しまで含め、至れり尽くせりで、データベース管理ツールとして最強だと思います。

Professional版だけの機能になりますが、もし Professional版を持っていれば、使わない手はないでしょう。