sqlplus使用技巧

生产环境的db没法直接用开发工具(比如TOAD、PL/SQL Developer )来连接并进行数据操作,因为有很严格的权限控制(为了db安全考虑),我们开发人员能用的唯一工具就是通过sshterm登录到db server上面,然后用指定的受限用户名通过sqlplus登录,然后进行操作;习惯了使用开发工具的便利,初次回到sqlplus的话会非常不习惯,但只要我们设置一些简单的参数,就可以大大提高sqlplus的可用性;
另外,就是需要从db中导出数据到文件,默认情况下,导出文件中会有很多的垃圾信息,我们需要将他清理掉,此时相关的设置就很有作用啦;

sqlplus的优化主要是通过两种方式来进行:
1、系统参数设置,通过set操作实现(可以搭配show查看配置项,show all可查看所有系统参数设置列表),比如set linesize 180;
2、显示格式设置,通过column操作实现,比如column aa format a32;
3、Session参数设置,通过SQL操作实现,比如alter session set ...;

下面介绍下常用sqlplus set参数列表,更全面的set集合请参考oracle官方文档;
set linesize 180                设置每行显示的字符总数
set pagesize 100             设置每页显示的行数
set feedback on/off          设置是否显示已选择XX行
set heading on/off            设置是否显示列名
set time on/off                   设置是否显示当前系统时间
set timing on/off                设置是否显示每条SQL执行消耗的时间
set termout on/off             设置在执行sql文件时是否在控制台打印相关信息
set trimout on/off              设置是否去除标准输出每行的拖尾空格
set trimspool on/off         设置是否去除spool输出文件中每行的拖尾空格

显示格式的设置主要由column命令完成,其语法为:
column columnName [format format] [heading heading]
比如column login_id format a32 heading 旺旺ID
其中heading 旺旺ID 表示结果集中login_id字段名显示为:旺旺ID;
功能与SELECT LOGIN_ID AS 旺旺ID FROM ...一样;

Session参数的设置就很专业和复杂了,一般开发人员不会涉及到,但是有两个参数我们可以自行设置;
其一是设置日期时间型字段的显示格式,在sqlplus中执行一下命令即可:
alter session set nls_date_format='yyyy-mm-dd hh24:mi:ss';
其二是设置当前session的字符编码(编码随各DB会有不同),以便能够显示中文;比如执行以下命令:
alter session set nls_lang='AMERICAN_AMERICA.ZHS16GBK';
当然,这两个参数也可以直接放在OS当前用户的环境变量中,这样就不必每次进入sqlplus之后还需要重复执行以上的命令,会方便很多;

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值