TOC
マルチプラットフォームDBクライアントBeekeeper Studioのご紹介
MITライセンスで提供されるGUIのマルチプラットフォームDBクライアントであるBeekeeper Studioのご紹介です。
Beekeeper Studioとは
マルチプラットフォームで動作するGUIのデータベースクライアントです。MITライセンスなので、非営利目的や個人利用のみ利用が無料ということもありません。Electronを使うことでマルチプラットフォーム対応を可能にしているようです。
また、DBアクセス部分はsqlectron-coreを使用しているようです。
動作プラットフォーム
執筆時点の1.4.1では以下のプラットフォーム用のインストールイメージが提供されています。
- macOS
- Windows(インストーラー/ポータブル)
- Linux(AppImage/deb/snap) 1
対応データベース
執筆時点の1.4.1では以下のデータベースへの対応が謳われています。
- SQLite
- MySQL
- MariaDB
- Postgres
- SQL Server
- Amazon Redshift
主な機能
サイトに挙げられている機能です。
- SQLクエリのシンタックスハイライト付き自動補完
- タブインタフェースによる複数同時実行
- テーブルのソート、フィルタリングによるデータ発見
- 気の利いたキーボードショートカット
- 過去3日分のクエリ実行履歴の保存
- デフォルトのダークテーマ
インストール
今回はdebパッケージのインストールで確認しました。他にAppImageとsnapでも提供されています。今回動作確認をしたOSはUbuntu MATE 20.04(amd64)です。
現時点ではaptからの導入はできないので、beekeeper-studio_1.4.1_amd64.deb
をダウンロードしてdpkgコマンドでインストールします。依存パッケージは以下です。
- libgtk-3-0
- libnotify4
- libnss3
- libxss1
- libxtst6
- xdg-utils
- libatspi2.0-0
- libuuid1
- libappindicator3-1
- libsecret-1-0
これらのパッケージがインストールされていない場合は事前にインストールする必要があります。Beekeeper Studioのインストール例は以下となります。
$ sudo dpkg -i Downloads/beekeeper-studio_1.4.1_amd64.deb
起動画面
メニューのプログラミングにBeekeeper Studioが登録されているので起動します。コマンドラインからは以下のように起動します。
$ beekeeper-studio
試しにローカルのSQLiteファイルを開きたいと思います。こちらのサイトから香川県の郵便番号データ2をダウンロードして開くことにします。
中央のQuick Connect
からSQLiteを選んで、表示されるDatabase File
のChoose File
からSQLiteファイルを選択します。3
Connectを選んで、SQLiteファイルに接続します。
クエリ実行画面
左のペインにテーブル・ビュー、右ペインにクエリ入力画面が表示されました。左ペインのさらに左は★が保存済みクエリ、反時計回りアイコンが実行クエリの履歴になっています。
右のクエリ入力画面ではテーブル名入力、カラム名入力時に候補が補完入力できます。
テーブル名の後にドットを打つと自動表示されるのと、Ctrl+Space
でも候補が表示されるので、Eclipseを使い慣れている人は特に違和感なく高速にクエリを入力できるんじゃないかと思います。
適当にクエリを打ち込んで実行(Runボタン押下orCtrl+Enter)すると結果が得られます。右下の実行結果は各カラムをクリックすることでソートが可能です。実行したクエリは反時計回りアイコンに保存されます。
残しておきたいクエリはSaveボタンを押すことで名前を付けて保存して、★アイコンに表示されるようになります。
クエリの実行結果は右下の保存ボタンでCSVで保存できます。
"id","zip","ken_name","city_name","town_name"
"760000000","760-0000","香川県","高松市","NULL"
"760000100","760-0001","香川県","高松市","新北町"
"760000200","760-0002","香川県","高松市","茜町"
"760000300","760-0003","香川県","高松市","西町"
"760000400","760-0004","香川県","高松市","西宝町"
その他
テーブル・ビューのフィルタリング・ピン留め
テーブルが複数あってよく使うものが決まっている場合など、テーブル名のフィルタリングやピン留めができます。ピン留めしたテーブルは上に表示されるので楽に作業ができるようになりますね。ただし、このピン留めは今の所アプリ終了で破棄されるため、起動時に毎回する必要があります。
空のSQLiteファイルの新規作成はできない(多分)
SQLiteを使う場合に限りますが、もともとSQLiteファイルがない場合の新規作成機能はないようなので、sqlite test.sqlite3
等のコマンドで作成する必要があります。
まとめ
無償で複数のDBを扱えてマルチプラットフォームで動作するGUIクライアントはこれまでになかった気がするので、強力な補完、履歴機能を含めて唯一にして決定版なのではないかという予感がしています。
少しでも興味のある方はぜひ触っていただきたいソフトです。
スポンサーリンク
comments powered by Disqus