常用的SQL*PLUS命令
大家知道,SQL*PLUS能够识别SQL语句和SQL*PLUS命令,要想用好SQL*PLUS,除了必须熟悉SQL语言之外,还要懂得一些SQL*PLUS命令。下面介绍一些常用的SQL*PLUS命令。
1、 HOST
键入HOST命令能够从SQL*PLUS环境切换到操作系统环境,以便执行操作系统命令,按Ctrl+D能回到SQL*PLUS状态。
2、 DISCONNECT 和CONNECT
DISCONNECT 命令顾名思义,就是断开当前用户与ORACLE的连接,然后,你可以键入CONNECT命令,用另外一个用户名进入。
3、 SHOW
用SHOW ALL命令可以查看SQL*PLUS的68个系统变量值。用SHOW USER命令可以查看当前是哪个用户在使用SQL*PLUS
4、 DESCRIBE(DESC)
DESCRIBE或DESC命令可以查看对象的结构,这里的“对象”可以是表、视图、存储过程、函数、包等。比如键入DESC DUAL,你就可以发现DUAL表只有一列。
5、 SAVE filename
每当你在SQL*PLUS中执行一条或若干条SQL语句,ORACLE就会把这些刚执行过的语句存放到一个称为“缓冲区”的地方。每一次执行SQL语句,该语句就会存入缓冲区而把以前的覆盖。也就是说,缓冲区中存放的是刚才执行过的SQL语句。
用SAVE filename 命令可以把当前缓冲区中的内容存入文件中,其中,filename是你所取的文件名。
6、 GET filename
该命令将文件中的内容取出来防至缓冲区。
因此,你可用Vi或别的编辑器写好你需要执行的语句,然后用GET命令将这些语句取至缓冲区执行。
7、 /
斜杠“/”也是一个SQL*PLUS命令,它显示缓冲区中的内容并执行。
8、 RUN(R)
这两个命令和“/”一样。
9、 @
该命令直接执行缓冲区中的命令,但并不将它显示在屏幕上。
10、L
列出缓冲区中的内容,但并不执行。
11、L n
列出缓冲区中第n行的内容。
12、CHANGE(C)
C/string1/string2可以将缓冲区中当前行的string1字符串替换为string2 字符串。
13、A
把文本添加到缓冲区中当前行的末尾。
14、DEL
删除缓冲区中当前行。
15、I
在当缓冲区中当前行的后面插入一行。
下面举一个简单的例子,来讲解一些缓冲区编辑命令的使用方法。
假设你输入下面的这些命令:
SQL > SELECT name FROM tab_student
2> WHERE num AT
3> (SELECT num FROM tab_top_student );
你会发现语句有错,你需要修改它。这些语句已经存至缓冲区,你不必再次输入。
键入L命令,得到如下显示:
SQL > SELECT name FROM tab_student
2> WHERE num AT
3*> (SELECT num FROM tab_top_student );
注意第三行,有一个*号,表示这是当前行,键入L 2,得到如下显示:
2*> WHERE num AT
即把第二行变为当前行。
键入 C/AT/IN,得到如下显示:
2*> WHERE num IN
键入L查看一下缓冲区中所有内容:
SQL > SELECT name FROM tab_student
2> WHERE num IN
3*> (SELECT num FROM tab_top_student );
注意,这时第二行已经修改好,第三行为当前行。
好了,键入R运行这些语句即可。
当然,SQL*PLUS命令还有很多。这次就写到这里吧。累了,下次再写。