在sqlplus中,如果没有上下翻页工具,sqlplus是不能向Linux终端一样上下翻历史命令的,但sqlplus会记录最近的一行DML语句到buffer中,我们可以使用一些简单的命令查看、修改、执行记录在buffer中的语句,如下:
l[ist] [n] 查看buf中的SQL:
del [n] 移除buf中的某行SQL:
cl[ear] buff[er] 移除buf中语句:
C[hange]/old_value/new_value 表示更改第一个出现的字符 :
此外,还有I和A,分别表示:
I[NPUT] 当前行下加新内容,即新增一行
A[PPEND] 当前行尾增加内容
上面方法中,在修改一些简单的SQL语句还好,但是如果执行一些比较复杂的SQL语句,再做修改的话,就会稍微有点儿麻烦,此时我们可以借助“VI”等文本编辑器来对缓存的SQL做更改
首先是定义我们使用哪个编辑器,以“VI”编辑器为例:
定义好编辑器后,我们就可以使用ed命令像编辑文本一样编辑缓存的SQL语句了。