2012年1月15日日曜日

[vim] vimからmysqlを操作するプラグイン dbext

最近、mysqlのクエリたたくことが多くなってきた。

周りの人は、mysql workbenchというGUIクライアントを使っている。
MySQL Workbench

リレーション張りまくりのテーブル設計するにはいいかもしれないが、
現状テーブル作るときはsymfonyのコマンド使うし、
ちょっとselect実行するためにGUI立ち上げるのはめんどくさい。


そして何より、周りの人とおんなじもの使うのは負けた気がする。

で、vimからmysqlを実行するためのプラグイン dbextを入れてみた。
vim-scripts / dbext.vim
Vimから任意のデータベースを操作


インストール


pathogenを使っていれば、以下でOK。
$ cd ~/.vim/bundle
$ git clone https://github.com/vim-scripts/dbext.vim
便利だ。
[vim] pathogenを導入

設定

ユーザ名やパスワード、DB名等を.vimrcに書き込んでおく。
let dbext_default_profile=""
let dbext_default_type="MYSQL"
let dbext_default_user="root"
let dbext_default_passwd=""
let dbext_default_dbname="jobeet"
let dbext_default_host="localhost"
let dbext_default_buffer_lines=20
「let dbext_default_buffer_lines=20」は結果を表示するウインドウの行数。

ショートカットキーとかは初期設定でも使えそう。

使い方

① sqlを実行
ノーマルモードもしくはビジュアルモードで、「\ + se」
ノーマルモードでは、カーソルがある行。
ビジュアルモードでは、選択した範囲のSQLが実行される。
実行すると別ウインドウで結果が表示される。


② テーブルのselectを実行
たとえばインサート文が書いてるファイルを開き、
対象のテーブルの中身を見たいとき、
カーソルをテーブル名に合わせ「\ + st」とすればselectした結果が表示される。
いちいちselect文書く必要はない。

③ テーブルのdescを実行
あるテーブルの構造が知りたいときは、
カーソル下にテーブルがある状態で「\ + sdt」



④ show tablesを実行
DBにあるテーブルが知りたいときは、「\ + slt」
ただ、おしにくい。


そのうちやりたいこと

① 接続先を簡単に変更できる設定
接続先は頻繁に変更することになるから、絶対に必要。
unite source作るか。

② DB変更
今はあんまり使わないが、DBの変更も簡単にできるようにしておくか。

③ hook script
ヘルプを読むと、結果を表示した後に結果を適当に編集して表示できるっぽい。
今のとこ、数字と文字列に別の色つけるくらいのアイディアしか浮かばないが、
そのうちもうチョイ面白い設定をしてみたい。

④ tag設定
:DBCompleteTableを実行すれば、
テーブル名補完ができるようになる。
適当に設定して、そのまま放置していた補完回りと一緒にまとめたい。

0 件のコメント:

コメントを投稿