LoginSignup
10
3

More than 1 year has passed since last update.

VimをSQLクライアントにするプラグインdadbod/dadbod-uiを使ってみた

Last updated at Posted at 2020-03-31

概要

VimでSQLを実行できるプラグイン。

MySQLのmysql dbに接続した画面
1.png

確認環境

  • Vim 8.2.350
  • Mac OS

前提条件

  • 接続したいDBのクライアントがインストールされている

設定

MySQLの場合

  1. 任意の場所に接続先の情報を記述したjsonファイルの作成
    例) $HOME/.vim/dadbod-ui/connections.jsonに作成する
connections.json
[{"url":"ユーザー名:パスワード@ホスト:ポート/DB名","name":"任意の名前"}]

// 
[{"url":"mysql://user_name:password@localhost:3306/local_db","name":"local_db"}]
  1. .vimrcに接続先の情報を記述したファイルのディレクトリを指定する
.vimrc
let g:db_ui_save_location = '~/.vim/dadbod-ui'

デフォルトでは一覧表示(List), インデックス一覧(Indexes), 主キー(Primary Keys), 外部キー一覧(Foreign Keys) がある。
それに別のものを追加したい場合、 g:db_ui_table_helpers で設定する。

.vimrc
let g:db_ui_table_helpers = {
\   'mysql': {
\     'Desc': 'DESC {table}',
\     'Create Table': 'SHOW CREATE TABLE {table}',
\     'Comment': 'SHOW FULL COLUMNS FROM {table}',
\     'Count': 'SELECT COUNT(*) FROM {table}'
\   }
\ }

使い方

下記のコマンドで今開いている画面の左側にテーブル一覧が表示されます。

:DBUI

Enter でコマンドが選択され、右側にSQLが表示されます。
右側のSQLを編集して、保存する(:w)と編集したSQLが実行されます。

自分の使い慣れたキーバインド/プラグインでSQLが実行できるので、
すべてをVimで解決したい人には良いプラグインだと思います。

GitHubリポジトリ

10
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
3