I am using Oracle 10g Express Edition on Fedora core 5 32+ bit os. The problem is when I use the SQL Plus command line to make SQL statements I can not get the previously typed command back at the prompt when I use the up and down arrow keys on my keyboard. This is quite easy when I am using a shell, but here with this Oracle command line interface it is not working at all. Here is the example as what actually is happening whe I press the up or down arrow keys.
SQL> drop table mailorders;
Table dropped.
SQL> ^[[A^[[A^[[A^[[A^[[A^[[A^[[A^[[A^[[A^[[A^[[A^[[A
The 'l' command will show the last run command ( source: krenger.ch ):
SQL> l
1* select owner, count(1) from dba_tables group by owner
SQL>
To get more than that, turn on history ( source: dba-oracle ):
SQL> set history on
SQL> history
1 select * from dual;
2 select sysdate from dual;
3 show history
If you need rerun only the last command typed then the forwardslash "/" would work. Hit / and then the enter key would rerun the last statement.
SQL> select sysdate from dual;
SYSDATE
--------
03-12-17
SQL> /
SYSDATE
--------
03-12-17
SQL>
SQL*Plus doesn't offer this feature out-of-the-box. You have to setup rlwrap to get that going
We have built a new command line interface that supports everything SQL*Plus offers, but also includes more modern features such as previous command history. It's called SQLcl . The command history remembers your last 100 statements/scripts, even from previous sessions.
in SQL plus command you can get you previous command by:
1- show previous command
SQL> history
1 l
2 show history
3 select * from dual;
2- run specific command from previous
SQL> history 3 run
D
-
X
3- edit specific command from previous
SQL> history 2 edit
PS: before using history you need to activated by:
SQL> set history on
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.