每当我在SQLPlus中输入错误时,是否都必须重新输入信息?


11

如果在输入“ insert into”命令时在SQLPlus中出错,是否可以备份该信息以进行编辑?


您需要在命令行中输入:Rollback;

@ user16063 ---那会做什么?你能详细说明吗?
jcolebrand

@ user16063我很确定这是一个误解,Bambi要编辑先前的命令文本而不回滚事务。
杰克说试试topanswers.xyz 2012年

还签出sqlcl(但是它是Java应用程序,但是非常漂亮,提示符和CLI的终端支持)
eckes

Answers:


15

几种方法。

您可以EDITOR在运行SQL * Plus(假设Unix)之前设置环境变量,以允许使用外部文本编辑器(vi例如,):

export EDITOR=vi

然后输入edSQL * Plus在编辑vi器中编辑上一个查询。当然,你可能更喜欢nanopicoemacsvim等等等等。

如果您不想设置环境变量,则可以将其添加define _editor=vi$ORACLE_HOME/sqlplus/admin/glogin.sql文件中。

我最喜欢的实现SQL * Plus编辑天堂(在Unix中)的方法是使用rlwrap。这增加了readline对SQL * Plus的支持,并允许您在SQL * Plus本身中轻松进行编辑。

rlwrap从分发软件包存储库安装(或从此处的网站下载并编译),然后将以下内容添加到您的Shell启动脚本中(.bashrc/ .bash_profile或类似名称):

alias sqlplus="rlwrap -i sqlplus"

2

除非有任何更改,只需键入“ edit”并按Enter,它将在记事本中打开(此处为Windows),您可以在其中更改查询。


-2

对于所有命令行应用程序,emacs都可以用作界面。您可以打开外壳程序模式并运行命令行工具。Emacs会将您输入的命令发送到命令行工具,并读取并显示输出。因为您在emacs中输入了输入,所以可以使用emacs命令来操纵输入。使用此模式,emacs可以与以下oracle工具一起使用,例如*

  • lsnrctl
  • 肾上腺皮质激素
  • dgmgrl

有一个特殊的sql-oracle模式,特别支持sqlplus。我很久以前就使用它。今天,我没有在文档中找到它。我在网上搜索,但只找到以下链接。搜索emacs文档时,也许可以找到更多信息。emacs还有其他 SQL模式。此页面也包含对@Jack Douglas找到的链接的引用。

许多人不喜欢emacs,因为他们认为emacs是一个复杂的工具。


我想知道是否来自vi粉丝;)我在Google上发现了此文件(显然是“受sqlplus-mode.el启发”),这是您在说的吗?
杰克说请尝试topanswers.xyz 2012年

我认为这类似于sql-oracle模式。
miracle173
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.