2.2 SQL*Plus中的缓冲区

SQL*Plus提供了一个命令缓冲区,用来保存最近执行的一条SQL语句,或者一个PL/SQL块。用户可以反复执行缓冲区中的内容,也可以对缓冲区中的内容进行编辑。

2.2.1 执行缓冲区中的内容

执行缓冲区中内容的命令有两个:“/”和run。

“/”命令的作用是执行缓冲区中刚刚输入的或者已经执行内容。如果是一条SQL语句,它的结束标志是“;”,遇到分号,这条SQL语句就会执行。如果在SQL语句执行后输入/命令,这条SQL语句将再执行一次。如果是PL/SQL块,结束标志仍然是“;”,只是在输入结束后还必须输入/命令,这个块才能执行。如果再次输入“/”命令,这个块将再次执行。例如:


SQL>CREATE TABLE t2(id number);

表已创建。

SQL>/

create table t2(id number)

*

ERROR位于第1行:

ORA-00955:名称已由现有对象使用


首先在SQL*Plus中执行CREATE命令创建表T2,然后输入“/”命令再次执行这条SQL语句。由于这个表已经创建,所以出现了错误信息。

run命令与“/”命令一样,也是再次执行缓冲区中的内容,只是在执行之前首先显示缓冲区中的内容。例如,在刚才执行了CREATE语句后,再执行run命令,结果如下所示:


SQL>run

1*create table t2(id number)

create table t2(id number)

*

ERROR位于第1行:

ORA-00955:名称已由现有对象使用