有时候,在sqlplus 中输入“edit”后,出现的不是 vi 的界面,而是一个问号,不管输什么都是问号。很多人只好输入!sqlplus 再进一次 sqlplus。其实这是因为 sqlplus 的默认编辑器变成了 ed 而导致的。在出现问号后,你可以一个 q 然后回车,看能不能退出ed (可多试几次)。
在 sqlplus 下输入 def 可看到默认的编辑器是不是 vi 。如果不是,可在下面方法中任选其一:
(1)在 sqlplus 中输入:
DEFINE _EDITOR=vi
缺点是每次进 sqlplus 都得改,比较麻烦。
(2)如果你所用的用户对 $ORACLE_HOME 下的文件有修改权限,可修改 $ORACLE_HOME/sqlplus/admin/glogin.sql ,在最后一行也是加上DEFINE _EDITOR=vi即可,这样 vi 就变成默认编辑器了。