Preciso digitar novamente as informações sempre que cometer um erro no SQLPlus

11

Se eu cometer algum erro no SQLPlus ao inserir um comando 'inserir em', existe uma maneira de recuperar essas informações para editá-las?

Bambi Bowman
fonte
Você precisa digitar Na linha de comando: Reversão;
@ user16063 --- e o que isso fará? Você pode elaborar alguma coisa?
jcolebrand
@ user16063 Tenho certeza de que isso é um mal-entendido, Bambi deseja editar o texto do comando anterior e não reverter uma transação.
Jack diz que tente topanswers.xyz 12/12/12
Também check out sqlcl(é no entanto aplicativo Java, mas muito chique pronta e Suporte Terminal para uma CLI)
Eckes

Respostas:

15

Várias formas.

Você pode definir a EDITORvariável de ambiente antes de executar o SQL * Plus (Assuming Unix), para permitir o uso de um editor de texto externo (a vitítulo de exemplo):

export EDITOR=vi

Em seguida, digite edSQL * Plus para editar a consulta anterior no vieditor. Claro, você pode preferir nano, pico, emacs, vimetc etc.

Se você não deseja definir uma variável de ambiente, pode adicionar define _editor=viao seu $ORACLE_HOME/sqlplus/admin/glogin.sqlarquivo.

Minha maneira favorita de alcançar o céu de edição do SQL * Plus (no Unix) é usando rlwrap. Isso adiciona readlinesuporte ao SQL * Plus e permite editar facilmente no próprio SQL * Plus.

Instale a rlwrappartir do repositório de pacotes de distribuição (ou faça o download e compile no site aqui ) e adicione o seguinte ao script de inicialização do shells ( .bashrc/ .bash_profileou similar):

alias sqlplus="rlwrap -i sqlplus"
Philᵀᴹ
fonte
2

A menos que algo tenha mudado, basta digitar "edit" e pressionar enter e ele será aberto no Bloco de Notas (assumindo o Windows aqui) e você poderá alterar a consulta lá.

mrdenny
fonte
-2

Para todos os aplicativos de linha de comando, o emacs pode ser usado como uma interface. Você pode abrir o modo shell e executar a ferramenta de linha de comando. O Emacs enviará o comando que você digitou para a ferramenta de linha de comando e lerá e exibirá a saída. Como você digita sua entrada no emacs, pode manipulá-la usando os comandos emacs. Usando este modo, o emacs pode ser usado com as seguintes ferramentas Oracle, como *

  • rman
  • lsnrctl
  • adrci
  • dgmgrl

Existe um modo sql-oracle especial que suporta especialmente o sqlplus . Eu trabalhei com isso há muito tempo. Hoje não encontrei na documentação. Pesquisei na web e encontrei apenas o seguinte link . Talvez você possa encontrar mais informações ao pesquisar os documentos do emacs. Existem outros modos sql para o emacs . Esta página também contém uma referência ao link encontrado por @Jack Douglas.

Muitas pessoas não gostam do emacs porque pensam que é uma ferramenta complexa.

miracle173
fonte
Eu me pergunto se os votos negativos são de vifãs;) Achei isso (aparentemente "inspirado no sqlplus-mode.el") no Google - é do tipo que você estava falando?
Jack diz que tente topanswers.xyz 12/12/12
Eu acho que isso é algo semelhante ao modo sql-oracle .
miracle173