ITPub博客

首页 > Linux操作系统 > Linux操作系统 > oracle中sqlplus的使用及优化

oracle中sqlplus的使用及优化

原创 Linux操作系统 作者:cheney_dlut 时间:2010-12-14 19:32:49 0 删除 编辑

    今天在itpub上看到dcba说,很多dba没有OEM ,pl/sql dev,toad就干不了活,也听过很多前辈说要熟悉sqlplus的用法,毕竟那是oracle自带的,肯定会有的。假如你从事dba工作,被人请去排除故障,这时候对方的电脑未必就有dev这些工具,所以熟悉掌握sqlplus是件好事,越早越好。
    1.基本使用
     开始——运行——cmd ——标题栏右键属性,
勾选“快速编辑模式”,则在cmd中就能进行编辑,方法如下:选中一段文字,点“enter”即为复制,复制后点右键即为粘贴,这样就方便了我们复制粘贴脚本。
    另外在布局中,可以调节cmd窗口的大小,
一般可以将宽度调的大一些,在进行select查询时能够清晰看到结果。

    2.优化
    下面我们以sys登陆,输入sqlplus "/as sysdba" ,然后转到scott用户,conn scott / tiger
    执行 SQL> select * from emp;  从scott账户的emp表中查询所有数据。
    先提出我们进行优化所用到的4条语句:

set wrap off(on)                  关闭(开启)自动换行

col HIREDATE  for a50        设置列HIREDATE格式为字符宽度50

这里需要注意,如果列是数值,不能用a50这种格式,必须用9或者0,每个9代表一位,比如9999代表四位

set linesize 100                      设置每行显示100字符 

set pagesize 100                   设置每页显示100行记录

   
    登陆sqlplus,使用scott账户

   好了,现在我们开始i进行实验,先设置下实验前参数:
             set wrap off
             col HIREDATE for a5
             set linesize 50
             set pagesize 10
    输入sql语句:select * from emp,

      之前关闭了自动换行,这就导致了超过行宽度的字段也无法显示出来,所以提示SAL ,COMM, DEPTON这三个字段被截断了; col HIREDATE for a5,设置了HIREDATE列的字符宽度为5,所以HIREDATE也没有完全显示出来;set linesize 50,导致上述三个字段未能显示出;set pagesize 10,每页显示10行记录,所以会有箭头所指的分割线。接下来我们重新设置下参数,能够更好的显示出结果:
             set wrap on
             col HIREDATE for a20
             set linesize 100
             set pagesize 50
    

    这样就能完整的看到结果了,注意这个美化只是对当前打开的连接有效。
  ok了 O(∩_∩)O~

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/24485833/viewspace-681802/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2010-08-23

  • 博文量
    22
  • 访问量
    22613