unoh.github.com

viの中でSQLを実行する

Mon Sep 25 06:11:12 -0700 2006

こんにちは,ttsuruoka です.

vi の中で SQL を実行することができるプラグイン,
dbext.vimを紹介します.

機能(一部)

- ex コマンドで SQL 文を入力して,その結果を取得
 :Select user_id from users order by rand() limit 7

Result バッファに結果が表示されます

- 選択したテキスト部分のSQLを実行
// プログラム中のSQL 
$query = "SELECT * FROM users LIMIT 10";

// 変数が含まれている場合
$query = "SELECT * FROM users LIMIT $n";

// プレースホルダーが含まれている場合
$query = "SELECT * FROM users LIMIT ?"; 

php 等のプログラムに書かれている SQL をビジュアルモード(CTRL-V)で選択して,
<Leader>se(バックスラッシュを押しながらse)を入力すると,選択範囲のSQLが実行されます.
変数やプレースホルダーが含まれている場合は,実行時に別の値に置き換えることができます.

その他にテーブル,カラムの一覧取得やテーブル名等の入力補完が使えます.


インストールと設定
vim7.0, Linux でのインストール方法:

- dbext.vim の入手
 $ wget http://www.vim.org/scripts/download_script.php?src_id=6221 -O dbext_400.zip
 $ unzip dbext_400.zip
 $ mv doc/dbext.txt ~/.vim/doc/
 $ mv plugin/dbext.vim ~/.vim/plugin/


- ドキュメントの有効化
vi の ex コマンドで,
 :helptags ~/.vim/doc


- データベースの設定
 :DBPromptForBufferParameters

これを実行すると接続するデータベースの設定を聞かれます.
データベースの種類,名前,ユーザー名,パスワードを入力すれば OK です.

以上で vi の中から SQL を実行することができるようになります.


さらに詳しい情報は,
 :h dbext.txt

を参照してください.