Oracle get、start、edit、spool命令,临时变量、已定义变量

来源:互联网 发布:知网数据下载器 编辑:程序博客网 时间:2024/05/22 12:50

get命令
读取文件内容到缓冲区
get[file]file_name[LIST|NOLIST]
LIST 列出缓冲区中的语句
NOLIST 不列出缓冲区中的语句
SQL> get scott_emp_query.sql  获得scott_emp_query.sql缓冲内容
SQL> get 'E:\query.sql' nolist 获得在E盘下建的query.sql内容,不列出语句

 

start命令
get只能读取,运行需run或/,使用start可读取内容并运行
start{url|file_name}
SQL> start  'E:\query.sql'  直接读取并运行
SQL> @ E:\query.sql         也可运行出相同结果
SQL> start  E:\query.sql    也可运行出相同结果

 

edit命令
使用edit命令编辑缓冲区中的内容,将缓冲区的内容复制到一个名为afiedt.guf的文件中,启动
记事本打开这个文件
edit[file_name]  file_name默认为afiedt.guf
SQL> edit       会直接打开记事本,编辑SQL语句后保存重新执行结果变化
已写入 file afiedt.buf

 

spool命令
将SQL*PLUS的输出结果复制到一个指定的文件中,或者把查询结果发送到打印机中,直到使用
spool off为止
spool[file_name[create|replace|append]|off|out]
off 表示停止将输出结果复制到file_name文件中,并关闭文件
out 启动该功能
SQL> spool E:\query.sql append   查询结果也会保存,附加在原内容后面
SQL> @E:\query.sql
SQL> spool off


 

使用临时变量
在某个变量前面使用了&,表示该变量是一个临时变量
SQL> select empno,job,mgr,sal,deptno   显示基本信息
     from scott.emp
     where empno > 7500;
若需要动态的传入一个值,则需要使用临时变量
SQL> select empno,job,mgr,sal,deptno  
     from scott.emp
     where empno > &temp;   回车提示输入temp的值,输入后回车会提示原值和现值
若定义两个或两个以上的临时变量,则需输入多次值,若是同一临时变量使用多次,则使用&&在
临时变量前面
SQL> select &&emp,job,mgr,sal,deptno  
     from scott.emp
     where &&emp > 7500;
SQL> set verify off; 若不想显示原值新值,则关闭,打开用on

 

使用已定义变量
定义变量,可以使用define或accept命令,删除变量,用undefine命令
define                 :显示所有已定义变量
define variable        :显示指定变量的名称、值和数据类型
define variable = value:创建一个char类型的用户变量,并为该变量赋初始值
SQL> define;  查看已定义的变量
如 DEFINE _DATE = "27-11月-13" (CHAR)
SQL> define temp=7500;  定义一个变量
SQL> define temp      查看temp
DEFINE TEMP  = "7500" (CHAR)
SQL> select empno,job,mgr,sal,deptno  
     from scott.emp
     where empno > &temp;
使用accept变量也可以定义变量,用于提示用户输入指定变量的数据
accept variable [data_type][FORMAT format][DEFAULT default][frompt text|nofrompt]
[hide]
SQL> accept test number format 9999 prompt'请输入一个empno的值:'hide
请输入一个empno的值:****  使用了hide值隐藏

 

原创粉丝点击