【发布时间】:2013-03-25 16:44:29
【问题描述】:
是否有一种简单的方法可以访问以前在 Oracle 中输入的命令?例如,在使用 Linux 终端时,可以按“向上箭头”键并遍历命令历史记录。 Oracle 是否提供类似的便捷功能?
提前致谢。
【问题讨论】:
是否有一种简单的方法可以访问以前在 Oracle 中输入的命令?例如,在使用 Linux 终端时,可以按“向上箭头”键并遍历命令历史记录。 Oracle 是否提供类似的便捷功能?
提前致谢。
【问题讨论】:
不是内置的,不。
在 DOS SQL*PLUS 中,您会遇到这种情况(即向上箭头转到前面的命令)。
在 linux sql*plus 中没有。话虽如此,Linux 上有一个名为rlwrap 的不错的实用程序可以为我们做这件事。首先安装该实用程序,然后设置一个别名(将其粘贴到您的 .profile 中,这样您就不必每次打开 shell 时都运行它):
oracle@dazza-linux64:~$ alias sqlplus='rlwrap sqlplus'
现在无论何时启动 sql*plus:
oracle@dazza-linux64:~$ sqlplus / as sysdba
您将获得所需的向上/向下箭头功能。
【讨论】:
在 Windows 客户端中有两个 SQL*Plus 命令行实用程序:一个是 DOS 外观的 (sqlplus.exe) 和一个是 Windows 外观的 (sqlplusw.exe)。 DOS 类型的版本具有“向上箭头”功能,此外,您可以按 F7 键查看以前的命令列表,但请注意,它不能很好地处理多行命令。
Windows 类型的版本不支持 uparrow 或 F7,但您可以突出显示先前的查询,然后复制/粘贴。您还可以在按住左键的同时执行 *nix 右键单击技巧以立即进行复制/粘贴。它在多行命令中表现良好,但我不得不承认我真的很想在这里也有向上箭头 :)
【讨论】:
这不是“Oracle”本身的功能,而是客户端和/或操作系统的功能。例如,如果我在 Windows 上运行 SQL*Plus,向上/向下箭头的功能与您描述的一样。
【讨论】: