Devo digitare nuovamente le informazioni ogni volta che commetto un errore in SQLPlus


11

Se commetto un errore in SQLPlus durante l'inserimento di un comando 'insert in', c'è un modo per ripristinare queste informazioni al fine di modificarle?


È necessario digitare la riga di comando: Rollback;

@ user16063 --- e cosa farà? Puoi elaborare del tutto?
jcolebrand

@ user16063 Sono abbastanza sicuro che si tratti di un malinteso, Bambi vuole modificare il testo del comando precedente non ripristinare una transazione.
Jack dice di provare topanswers.xyz il

sqlcl
Guarda

Risposte:


15

Diversi modi.

È possibile impostare la EDITORvariabile di ambiente prima di eseguire SQL * Plus (Assuming Unix), per consentire l'uso di un editor di testo esterno ( vi, a titolo di esempio):

export EDITOR=vi

Quindi digitare edSQL * Plus per modificare la query precedente vinell'editor. Naturalmente, si può preferire nano, pico, emacs, vimetc etc.

Se non desideri impostare una variabile di ambiente, puoi invece aggiungerla define _editor=vial tuo $ORACLE_HOME/sqlplus/admin/glogin.sqlfile.

Il mio modo preferito per ottenere il paradiso dell'editing SQL * Plus (in Unix) è usando rlwrap. Ciò aggiunge il readlinesupporto a SQL * Plus e consente di modificarlo facilmente all'interno di SQL * Plus stesso.

Installa rlwrapdal tuo repository di pacchetti di distribuzioni (o scarica e compila dal sito Web qui ), quindi aggiungi quanto segue allo script di avvio della shell ( .bashrc/ .bash_profileo simile):

alias sqlplus="rlwrap -i sqlplus"

2

A meno che qualcosa non sia cambiato, basta digitare "modifica" e premere invio e si aprirà nel Blocco note (supponendo che Windows qui) e puoi cambiare la query lì.


-2

Per tutte le applicazioni a riga di comando, emacs può essere utilizzato come interfaccia. È possibile aprire la modalità shell ed eseguire lo strumento da riga di comando. Emacs invierà il comando inserito allo strumento da riga di comando e leggerà e visualizzerà l'output. Poiché digiti l'input in emacs, puoi manipolarlo utilizzando i comandi emacs. Usando questa modalità emacs può essere usato con i seguenti strumenti Oracle come *

  • rman
  • lsnrctl
  • adrci
  • dgmgrl

Esiste una speciale modalità sql-oracle che supporta in particolare sqlplus . Ci ho lavorato molto tempo fa. Oggi non l'ho trovato nella documentazione. Ho cercato sul web e ho trovato solo il seguente link . Forse puoi trovare di più quando cerchi i documenti di emacs. Esistono altre modalità sql per emacs . Questa pagina contiene un riferimento al link trovato anche da @Jack Douglas.

A molte persone non piacciono gli emacs perché pensano che sia uno strumento complesso.


Mi chiedo se i downvotes siano dei vifan;) Ho trovato questo (apparentemente "ispirato a sqlplus-mode.el") su Google: è il genere di cosa di cui stavi parlando?
Jack dice di provare topanswers.xyz il

Penso che questo sia qualcosa di simile alla modalità sql-oracle .
miracle173,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.