Oracle Sqlplus 编辑、保存、运行及查询结果操作

平时工作使用plsqldev,某些特殊情况下我们会使用sqlplus,本文以简单示例对sqlplus常用的操作进行说明,希望能够帮助到大家。

启动sqlplus

进入到命令行窗口

C:\Users\85795>sqlplus

SQL*Plus: Release 11.2.0.1.0 Production on 星期二 3月 10 11:41:31 2020

Copyright (c) 1982, 2010, Oracle.  All rights reserved.
请输入用户名:  sys as sysdba
输入口令:

连接到:
Oracle Database 11g Release 11.2.0.1.0 - 64bit Production
注意:普通用户如scott直接输入用户名/密码即可。
     管理员用户需要加上as sysdba,如sys as sysdba

常用编辑方法

APPEND: APPEND TEXT;

SQL> SELECT DEPTNO, DNAME, LOC FROM DEPT;

    DEPTNO DNAME          LOC
---------- -------------- -------------
        10 ACCOUNTING     NEW YORK
        20 RESEARCH       DALLAS
        30 SALES          CHICAGO
        40 OPERATIONS     BOSTON
/*
上面语句执行完之后,如果我们想对DEPTNO排序的话,可以使用`APPEND`方法追加SQL语句。特别注意,`APPEND`后面跟两个空格,如:*/
SQL> APPEND  ORDER BY DEPTNO DESC; 
     -- APPEND执行完之后,会出现拼接后的语句,如下:
     -- 1* SELECT DEPTNO, DNAME, LOC FROM DEPT ORDER BY DEPTNO DESC
     -- 输入 `/`之后,出现append之后的结果
SQL> /
    DEPTNO DNAME          LOC
---------- -------------- -------------
        40 OPERATIONS     BOSTON
        30 SALES          CHICAGO
        20 RESEARCH       DALLAS
        10 ACCOUNTING     NEW YORK

以下其它的使用方法同APPEND一样,故不再举具体示例。
CHANGE: CHANGE/ OLD_TEXT/ NEW_TEXT 。
DEL: DEL N; 表示删除第n行代码。
LIST: 显示缓冲区的内容,sqlplus一般执行语句之后会保存在缓冲区当中,如果要查询缓冲区当中的内容,可以使用LIST方法进行查询。如下图:

Oracle Sqlplus 编辑、保存、运行及查询结果操作_第1张图片

sqlplus保存当前sql脚本

准确的说,应该是保存当前缓存的结果。

方法一:ED:使用方法详见,直接在命令行窗口输入即可。
方法二:SAVE:SAVE FILE_NAME;

sqlplus将查询结果保存至本地

使用SPOOL方法即可对查询结果进行保存,特别注意,spool使用完之后,需执行完spool off之后才可以将结果进行保存 。
示例:

SQL> SPOOL E:\Personal\csdn_blong\DATA.CSV  -- 创建一个空的csv文件。
SQL> SELECT DEPTNO, DNAME, LOC FROM DEPT;
SQL> SPOOL OFF;  -- 类似于commot,将以上的sql查询结果提交至DATA.csv文件。

如下图:
Oracle Sqlplus 编辑、保存、运行及查询结果操作_第2张图片路径下出现DATA.csv文件,保存成功。

sqlplus执行特定的sql文件,并将结果保存至本地

  1. 创建一个脚本文件:
SELECT DEPTNO, DNAME, LOC FROM DEPT;

将其保存在本地,名称为sql_ste.sql
2. 执行上步创建的sql文件,在sqlplus当中,可以使用@来执行文件,如:@filename
具体操作如下:

SQL> SET TERM OFF  -- 有的时候,我们不需要将查询结果显示出来,可以使用`SET`命令
SQL> SPOOL E:/Personal/csdn_blong/data.csv  -- 创建一个data.csv文件。
SQL> @E:/Personal/csdn_blong/sql_ste.sql  -- 执行某个路径下的sql文件。
SQL> spool off -- 执行完毕,并将结果提交至data.csv。
SQL>
------------------------------------
data.csv文件当中结果如下:
SQL> @E:/Personal/csdn_blong/sql_ste.sql

    DEPTNO DNAME          LOC                                                   
---------- -------------- -------------                                         
        10 ACCOUNTING     NEW YORK                                              
        20 RESEARCH       DALLAS                                                
        30 SALES          CHICAGO                                               
        40 OPERATIONS     BOSTON                                                

SQL> spool off

如图:Oracle Sqlplus 编辑、保存、运行及查询结果操作_第3张图片
到此结束, 如有问题,欢迎讨论

end

你可能感兴趣的:(初出茅庐)