Apakah saya harus mengetik ulang informasi setiap kali saya membuat kesalahan dalam SQLPlus
11
Jika saya membuat kesalahan dalam SQLPlus saat memasukkan perintah 'masukkan ke', apakah ada cara saya bisa mengembalikan informasi ini untuk mengeditnya?
Anda perlu mengetik Di baris perintah: Kembalikan;
@ user16063 --- dan apa yang akan dilakukannya? Bisakah Anda menguraikannya sama sekali?
jcolebrand
@ user16063 Saya cukup yakin ini adalah kesalahpahaman, Bambi ingin mengedit teks perintah sebelumnya tidak memutar kembali transaksi.
Jack bilang coba topanswers.xyz
Lihat juga sqlcl(itu adalah aplikasi Java, tetapi prompt yang sangat mewah dan Dukungan Terminal untuk CLI)
eckes
Jawaban:
15
Beberapa cara.
Anda dapat mengatur EDITORvariabel lingkungan sebelum menjalankan SQL * Plus (Assuming Unix), untuk memungkinkan penggunaan editor teks eksternal ( vi, sebagai contoh):
export EDITOR=vi
Kemudian ketik edSQL * Plus untuk mengedit kueri sebelumnya di vieditor. Tentu saja, Anda dapat memilih nano, pico, emacs, vimdll dll
Jika Anda tidak ingin mengatur variabel lingkungan, Anda dapat menambahkan define _editor=vike $ORACLE_HOME/sqlplus/admin/glogin.sqlfile Anda .
Cara favorit saya untuk mencapai surga sunting SQL * Plus (di Unix) adalah dengan menggunakan rlwrap. Ini menambah readlinedukungan untuk SQL * Plus dan memungkinkan Anda untuk mengedit dengan mudah dalam SQL * Plus itu sendiri.
Instal rlwrapdari repositori paket distribusi Anda (atau unduh & kompilasi dari situs web di sini ), lalu tambahkan berikut ini ke skrip startup shell Anda ( .bashrc/ .bash_profileatau yang serupa):
Kecuali ada sesuatu yang berubah, cukup ketik "edit" dan tekan enter dan itu akan terbuka di Notepad (dengan asumsi Windows di sini) dan Anda dapat mengubah kueri di sana.
Untuk semua aplikasi commandline, emacs dapat digunakan sebagai antarmuka. Anda dapat membuka mode shell dan menjalankan alat baris perintah. Emacs akan mengirimkan perintah yang Anda input ke alat baris perintah dan membaca dan menampilkan hasilnya. Karena Anda mengetik input Anda ke emacs, Anda dapat memanipulasi input Anda menggunakan perintah emacs. Menggunakan mode ini emacs dapat digunakan dengan alat bantu oracle berikut seperti *
rman
lsnrctl
adrci
dgmgrl
Ada mode sql-oracle khusus yang secara khusus mendukung sqlplus . Saya sudah lama bekerja dengannya. Hari ini saya tidak menemukannya di dokumentasi. Saya mencari di web dan tetapi saya hanya menemukan tautan berikut . Mungkin Anda dapat menemukan lebih banyak saat mencari dokumen emacs. Ada mode sql lain untuk emacs . Halaman ini berisi referensi ke tautan yang ditemukan oleh @Jack Douglas juga.
Banyak orang tidak suka emacs karena mereka pikir itu adalah alat yang kompleks.
Saya ingin tahu apakah downvote berasal dari vipenggemar;) Saya menemukan ini (tampaknya "terinspirasi oleh sqlplus-mode.el") di Google — apakah itu jenis hal yang Anda bicarakan?
sqlcl
(itu adalah aplikasi Java, tetapi prompt yang sangat mewah dan Dukungan Terminal untuk CLI)Jawaban:
Beberapa cara.
Anda dapat mengatur
EDITOR
variabel lingkungan sebelum menjalankan SQL * Plus (Assuming Unix), untuk memungkinkan penggunaan editor teks eksternal (vi
, sebagai contoh):Kemudian ketik
ed
SQL * Plus untuk mengedit kueri sebelumnya divi
editor. Tentu saja, Anda dapat memilihnano
,pico
,emacs
,vim
dll dllJika Anda tidak ingin mengatur variabel lingkungan, Anda dapat menambahkan
define _editor=vi
ke$ORACLE_HOME/sqlplus/admin/glogin.sql
file Anda .Cara favorit saya untuk mencapai surga sunting SQL * Plus (di Unix) adalah dengan menggunakan
rlwrap
. Ini menambahreadline
dukungan untuk SQL * Plus dan memungkinkan Anda untuk mengedit dengan mudah dalam SQL * Plus itu sendiri.Instal
rlwrap
dari repositori paket distribusi Anda (atau unduh & kompilasi dari situs web di sini ), lalu tambahkan berikut ini ke skrip startup shell Anda (.bashrc
/.bash_profile
atau yang serupa):sumber
Kecuali ada sesuatu yang berubah, cukup ketik "edit" dan tekan enter dan itu akan terbuka di Notepad (dengan asumsi Windows di sini) dan Anda dapat mengubah kueri di sana.
sumber
Untuk semua aplikasi commandline, emacs dapat digunakan sebagai antarmuka. Anda dapat membuka mode shell dan menjalankan alat baris perintah. Emacs akan mengirimkan perintah yang Anda input ke alat baris perintah dan membaca dan menampilkan hasilnya. Karena Anda mengetik input Anda ke emacs, Anda dapat memanipulasi input Anda menggunakan perintah emacs. Menggunakan mode ini emacs dapat digunakan dengan alat bantu oracle berikut seperti *
Ada mode sql-oracle khusus yang secara khusus mendukung sqlplus . Saya sudah lama bekerja dengannya. Hari ini saya tidak menemukannya di dokumentasi. Saya mencari di web dan tetapi saya hanya menemukan tautan berikut . Mungkin Anda dapat menemukan lebih banyak saat mencari dokumen emacs. Ada mode sql lain untuk emacs . Halaman ini berisi referensi ke tautan yang ditemukan oleh @Jack Douglas juga.
Banyak orang tidak suka emacs karena mereka pikir itu adalah alat yang kompleks.
sumber
vi
penggemar;) Saya menemukan ini (tampaknya "terinspirasi oleh sqlplus-mode.el") di Google — apakah itu jenis hal yang Anda bicarakan?