SQL Plus环境设置与常用命令

SQL Plus环境设置与常用命令:
set serveroutput on; --设置dbms_output.put_line()可以显示输出结果
save D:\sql_name.sql --保存sql内容
get D:\sql_name.sql --将SQL脚本装入缓冲区
ed[it] D:\sql_name.sql --编辑SQL脚本
@D:\sql_name.sql --直接运行SQL脚本文件
SPOOL --用法:
spool d:\output;
select * from EMP_M;
select * from emp_d
spool off;
可以在D盘中找到output文件﹐该文件内容为select * from emp_m语句的查询结果

desc[ribe] table_name --查看表结构
set line[size] n; --设置一行显示的字符数
L命令与 n 'text' 命令--L用来显示错误﹐n 表示的行号﹐'text' 要修改的语句﹐例如﹐有如下错误﹕
SQL> select emp_no,emp_name
2 from emp_d
3 where emp_no='0001';
select emp_no,emp_name
*
ERROR 在行 1:
ORA-00904: 数据域名称无效

SQL> L; --下L命令
1 select emp_no,emp_name
2 from emp_d
3* where emp_no='0001'
SQL> 2 from emp_m; --下n 'text'命令
SQL> L;--用L命令显示缓冲区的内容
1 select emp_no,emp_name
2 from emp_m
3* where emp_no='0001'
SQL> / --下 / 命令运行缓冲区的内容

emp_no emp_name
---------- ----------
0001 lyj
--------------------
/ --命令运行缓冲区的内容
del [m][,n] --删除缓冲区的第m到第n行﹐如果没有n表示﹐表示删除第m行﹐如果m n都没有表示删除当前行
C[hange]/原文/新的正文 --该命令用来修改SQL缓冲区的语句﹐表示当前行用新的正文代替原文

show 命令﹕查看SQL*PLUS环境变量的状态﹐是on还是off

echo SQL*PLUS环境变量
查看 echo 状态 show echo
设置 echo 状态 set echo on | off
作用﹕运行sql脚本时﹐如果 echo 的状态为 on 则显示查询命令和结果﹐如果 echo 的状态为 off 则只显示查询结果

feed[back] SQL*PLUS环境变量
作用﹕返回查询结果的行数
设置﹕set feed[back] {6 | n | off | on } ,意义﹕表示当查询选择的数据行数大于 n 时﹐显示返回的数据行数
6为oracle的默认值

set hea[ding] {on | off} :设置报告中是否显示列标题
set array[size] {20 | n}:设置每次从数据库中获取的行数﹐最多500行
set line[size] {80 | n}﹕设置每行的字符数
set page[size] {24 | n}:设置每页的行数


column SQL*PLUS 的格式化命令﹕
用法﹕col[umn] [{列名} [可选项]],其中 "可选项" ﹕cle[ar] | for[mat] 格式化模式 | hea[ding] 正文 | jus[tify] {对齐选项} | nul[l] | 正文 | pri[nt] | nopri[nt] | ....
例1﹐设置显示salary列的格式﹕col salary for $9,999.99;//逗号 表示千位符号﹐9为不显示前导0﹐
//设置前导0的格式为﹕$009,999.00
//设置本地货币符号的格式为﹕L009,999.00;
例2﹐设置显示depart_no列的宽度﹕col depart_no for a2;//只有两个字符的宽度 ,其中 a+n(数字) 也是格式化格式﹐表示 n 个字符长度
例3﹐设置某列的别名﹕col salary heading '工资'
例4﹐设置某列的别名和宽度﹕col depart_no heading '部门' for a4;
例5﹐显示设置列的格式﹕col salary;
例6﹐清除设置某列的格式﹕col salary clear;

SQL*PLUS的其它格式化命令
tti[tle] (top title的简写):tti[tle] [正文 | off | on] ﹐设置每页顶部标题
bti[tle] (bottom title的简写):bti[tle] [正文 | off | on] ﹐设置每页底部标题
break on 列名 [| 别名][skip n]﹕去掉重复的行﹐并在断开点跳过 n 行
clear break﹕清除所有的break设置

rem '注释内容':表示以 rem开头的语句为注释
set pagesize n :表示报告的长度为 n 行
set linesize n:表示显示的每行宽度为 n 行
desc查看表信息
desc emp_m;

替代变量: 1,以 & 开头的替代变量﹔2,以 && 开头的替代变量﹔3,define 定义的替代变量﹔4,accept 定义的替代变量
1﹐以 & 开头的替代变量﹕select emp_name,emp_sex,emp_age from emp_m where emp_age>&v_emp_age;
在运行脚本时﹐提示输入替代变量的值 如果替代变量为 非字符日期型的﹐ 直接输入变量值﹐不需加引号﹐
若替代变量为字符,日期型的则输入替代变量值要加单引号﹐如果将替代变量用单引号引起来﹐则输入替变量
代值不需要再加单引号﹐如﹕select emp_name,emp_sex,emp_age from emp_m where emp_name='&v_emp_name';
输入值后不能加分号。
查看原值和新值 set verify on
2﹑以 && 开头的替代变量﹕select emp_name,emp_sex,emp_age,&&v_col from emp_m order by &v_col;
重用某个替代变量而不让ORCALE系统每次提示输入替代变量值﹐上例中﹐尽管v_col替代变量出现两次﹐但是oracle
只提示输入v_col的值.oracle会自动记住第一次输入的替代变量值﹐如果要改变这个替代变量的值﹐需用
undefine命令来取消这个变量的值﹐如﹕undefine v_col ;
3﹑用 define 定义 替代变量﹕define 替代变量名称=变量值[(datatype)]
define v_emp_age = 22
select * from emp_m where emp_age = '&v_emp_age';
4﹑使用 accept 定义替代变量,可以改变输入提示信息﹕
accept v_emp_age prompt '请输入年龄﹕'
select * from emp_m where emp_age > &v_emp_age;
使用 accept 的 hide 选项,不显示输入的替代变量值﹐而是以 * 字符替换
accept v_emp_age prompt '请输入年龄﹕' hide
select * from emp_m where emp_age > '&v_emp_age';
accept 命令的格式和选项﹕
accept 变量名称 [数据类型] [Format 格式化模式] [prompt '正文'] [hide]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值