Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1613316
  • 博文数量: 292
  • 博客积分: 10791
  • 博客等级: 上将
  • 技术积分: 2479
  • 用 户 组: 普通用户
  • 注册时间: 2010-03-20 21:06
文章分类

全部博文(292)

文章存档

2011年(31)

2010年(261)

分类: Oracle

2010-07-20 09:09:02

SQL*PLUS(或称sqlplus)里除了我们经常使用的sql语句外,还有另外一些命令,它们通过对标题、列标题、页宽、页长以及时间等参数的格式化操作来控制sql语句的输出的内容和格式,常见的比如"set timing on”,"set heading off”等。

基本的SqlPlus命令

命令说明
remark注释
set headsep标题换行
ttitle设置输出页的头标题
btitle设置输出页的尾标题
column对sql语句中的列进行格式化处理
break on通知sqlplus在输出结果中插入空格
compute sum通知sqlplus计算小计
set linesize设置sqlplus输出的最大行宽
set pagesize设置页面的最大行数
set newpage设置页面之间的空行数
spoolsqlplus屏幕的文件输入输出命令
/**/注释,同remark
--双杠,注释,同remark
set pausesqlplus屏幕输出结果时在页面之间停顿
save保存当前session最近的sql语句至指定的文件中
host返回到操作系统环境,类似!
执行文件中的命令
edit使用自定义的编辑器编辑指定文件
define_editor自定义sqlplus里的编辑器
exit或quit退出sqlplus

今天先学习一下sqlplus里的column命令。

column

column是sqlplus里最实用的一个命令,很多时候sql语句输出的列宽度不合适而影响查看,都需要用到这个命令来更改select语句中指定列的宽度和标题。大部分时候,我们可以简写column为col即可,主要有以下两种用法:

  • 修改列宽度 
        column c1 format a20          --将列c1(字符型)显示最大宽度调整为20个字符 
        column c1 format 9999999  --将列c1(num型)显示最大宽度调整为7个字符
  • 修改列标题 
        column c1 heading c2      --将c1的列名输出为c2

示例如下:

未修改前的默认设置输出:
SQL> select a.FILE_NAME,a.TABLESPACE_NAME,b.CURRENT_SCN from 
DBA_DATA_FILES a ,v$database b where a.TABLESPACE_NAME='USERS'; FILE_NAME --------------------------------------------------------------------------- TABLESPACE_NAME CURRENT_SCN ------------------------------ ----------- +DATAGRP/db/datafile/users.259.686941969 USERS 7.3498E+10 修改后的输出结果:
SQL> col FILE_NAME for a45 --定义FILE_NAME列最大显示45个字符 SQL> col TABLESPACE_NAME for a10 --定义该列最大显示10个字符 SQL> col CURRENT_SCN for 999999999999 --定义该列最长显示12个数字 SQL> col TABLESPACE_NAME heading 'TBS_NAME' --定义该列输出标题为"TBS_NAME” SQL> / FILE_NAME TBS_NAME CURRENT_SCN --------------------------------------------- ---------- ------------- +DATAGRP/db/datafile/users.259.686941969 USERS 73497663251 SQL>

看着是不是爽多了。

阅读(2280) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~