可以试试在 vim 的 .vimrc 里面定义这样的热键:
nmap <silent> <F2> :1,.y<CR>:bel new<CR>p:%!sqlplus -s user/passwd<CR>
开一个 vim 写 SQL,写完以后按 F2 就可以从开头执行到当前行
---------解释------------
:1,.y
:bel new
p 把SQL粘到下面的窗口
:%!sqlplus -s user/passwd
---结果:上窗口显示编辑的SQL,下窗口显示运行结果---
(你也可以修改一下,改成按 Fx 执行全文,但是我觉得“执行到当前行”更灵活一些)
至于 SQL 历史保存的问题,我写了一个脚本,名字叫 d (很眼熟吧,infomix下用的这个名子,已经成了开 dbaccess 的专用缩写),内容如下:
biff@biffasus:~/bin$ cat d
#!/bin/bash
mkdir -p $HOME/.oracle
cd $HOME/.oracle
vi $HOME/.oracle
cd -
其实什么都没干,很神奇吧(不过你的VIM版本要支持目录编辑)
vim 带参数是目录时它会显示目录下的文件供你编辑,如下:
" ============================================================================
" Netrw Directory Listing (netrw v109)
" /domain/home/biff/.oracle
" Sorted by name
" Sort sequence: [\/]$,\.h$,\.c$,\.cpp$,\.[a-np-z]$,*,\.info$,\.swp$,\.o$\.obj
" Quick Help:
" ============================================================================
../
./
@@test.sql
create_t_cif_info.sql
cur_speed_test.sql
zh16encoding.sql
看到没有,目录下的SQL显示给你供选择,可以直接对SQL文件删除、改名
用光标上移、下移选择文件,回车开始编辑SQL,光标移到最后一行按 F2 开始运行
没有评论:
发表评论