`
JEmql
  • 浏览: 62385 次
  • 性别: Icon_minigender_1
  • 来自: 无锡
社区版块
存档分类
最新评论

Oracle sqlplus设置显示格式命令详解

阅读更多

设置列格式的相关命令

 

1. 改变列的显示长度
COLUMN column_name FOR[MAT] format

备注: 
  注意该命令将保持一直生效直至输入了一个新的格式值或者退出了SQL*PLUS, 其中字段类型可以为Char, Varchar2, varchar。

如果SQL*PLUS的WARP变量的值被设置为"开"(默认值), 那么字段的内容将会在format命令规定的长度处折行, 否则的话超过规定长度的后续字符将会被截取。

  如果你有多个相同显示属性的列需要设置,那么使用column 字段名 like 你想要复制显示属性的字段heading 字段名。注意如果不加上后面heading 字段名那么复制的时候连字段名都会复制过去,显然不适合一般要求。

   2. 格式化NUMBER类型列的显示
SQL> COLUMN SAL FORMAT $99,990

3. 显示列值时,如果列值为NULL值,用text值代替NULL值
COMM NUL[L] text
SQL>COL COMM NUL[L] text

4. 设置一个列的回绕方式
COLUMN WRA[PPED]|WOR[D_WRAPPED]|TRU[NCATED]

备注:此命令常和format合用,当列值过长时可以使用该命令格式话输出, wrapped根据字符长度控制, word_wrapped根据单词控制, truncated则直接截取等长字符。

  5. 清空当前所有列的设置,恢复成默认格式
  CLEAR COLUMNS

 

下面我们来看一下这些命令的综合应用:


SQL> desc testtable;
 Name                                      Null?    Type
 ----------------------------------------- -------- ----------------------------
 ID                                                 NUMBER
 NAME                                               VARCHAR2(20)
 REMARK                                             VARCHAR2(50)
 SALARY                                             NUMBER

SQL> select * from testtable;

        ID NAME
---------- ----------------------------------------
REMARK
--------------------------------------------------------------------------------
    SALARY
----------
         1 paul

     99999


现在我们要对这个输出进行修改,包括:

①分别设置输出列的长度为2、10、6、8
②分别设置输出列的列名居中
③格式化Salary列的值为$999,999
④将Remark列的空值替换为字符串User description
⑤设置Remark列的回绕方式为按单词回绕

下面我们来看看这个SQL*PLUS命令应该如何写:


SQL> column ID justify center
SQL> column Name justify center format a10
SQL> column Remark justify center format a6 NULL 'User description' word_wrapped
SQL> column salary justify right format $999,999
SQL> select * from testtable;

    ID        NAME    REMARK    SALARY
---------- ---------- ------ ---------
         1 paul       User     $99,999
                      descri
                      ption


看看其中的SQL语句:


Column Remark justify center format a6 NULL 'User description' word_wrapped。


该句设置了:列名居中显示、列的长度为6个字符、空值用'User description'代替、按单词回绕(所以是在User处折行,而不是在User d出折行,虽然列的长度可以为6)

设置页面及行格式的相关命令


1.设置一行可以容纳的字符数
SQL> SET LIN[ESIZE] {80|n}
如果一行的输出内容大于设置的一行可容纳的字符数,则折行显示。

2.设置一页有多少行数
SQL> SET PAGES[IZE] {24|n}
如果设为0,则所有的输出内容为一页并且不显示列标题

   3.设置页与页之间的分隔
SQL> SET NEWP[AGE] {1|n|NONE}
当set newpage 0 时,会在每页的开头有一个小的黑方框。
当set newpage n 时,会在页和页之间隔着n个空行。
当set newpage none 时,会在页和页之间没有任何间隔。

备注:以上三个命令经常合用, 首先设置每行显示的最大长度, 再设置每页有多少行, 最后设置页间距. 如果要获取较好格式的话可以配合Column format命令格式化每个字段的长度.


下面我们来实地查看一下上述命令在结果输出中的应用

SQL> select * from testtable;

        ID NAME       REMARK
---------- ---------- --------------------------------------------------
REG_DATE       SALARY
---------- ----------
         1 paul lin
07-6月 -08       5500

         2 bob lin    common user
06-6月 -08       6500


SQL>

下面我们要做的就是:

①调整页面最大显示长度为200
②设置每页只显示一条记录
③每页之间间隔两个空

SQL> set linesize 200 pagesize 1 newpage 2;
SQL>
SQL> /


         1 paul lin                                                      07-6月 -08       5500


         2 bob lin    common user                                        06-6月 -08       6500

SQL>

可以看到页面的输出并不让人满意(标题和虚线都没有了),现在我们使用一种令人比较满意的设置:


SQL> set linesize 200 pagesize 999 newpage;
SQL>
SQL>
SQL> /
        ID NAME       REMARK                                             REG_DATE       SALARY
---------- ---------- -------------------------------------------------- ---------- ----------
         1 paul lin                                                      07-6月 -08            5500
         2 bob lin    common user                                 06-6月 -08            6500

SQL>

实际上该命令的最后设置newpage会在每页的前面加上一个黑色的小方框(在这里不能显示),以提示这是新一页的开始,假如你不想进行任何的提示那么只要设置newpage为none就可以了(你所看到的输出和现在的一模一样)。

至于linesize的设置则要考虑屏幕和打印机的大小了。


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/huozhicheng/archive/2010/08/27/5842433.aspx

分享到:
评论

相关推荐

    Oracle SQLPLUS基础及sqlplus命令详解

    而Oracle SQL*Plus特有的命令,则是帮助用户在SQL*Plus环境下提高工作效率,例如"HOST"命令可以运行宿主操作系统命令,"PAGESIZE"命令用于设置输出显示的页边距等。 最后,深入掌握SQL*Plus的高级特性也非常重要。...

    Oracle_SQLPLUS基础及sqlplus命令详解

    Oracle_SQLPLUS基础及sqlplus命令详解

    Oracle sqlplus命令详解

    ### Oracle SQLPLUS命令详解 #### 一、Oracle的启动与关闭 在操作Oracle数据库时,启动和关闭系统是基础操作之一。以下将详细介绍如何通过Oracle的`sqlplus`工具及`svrmgrl`来执行这些操作。 ##### 启动Oracle...

    SQLPLUS 命令

    Oracle SQLPLUS基础及sqlplus命令详解_2014081801Oracle SQLPLUS基础及sqlplus命令详解_2014081801

    Oracle SQLPLUS命令的使用大全.doc

    ### Oracle SQLPLUS命令详解 #### 引言 Oracle SQL*Plus是Oracle数据库系统中的一个强大且灵活的命令行工具,用于执行SQL语句、管理数据库和执行脚本。它不仅支持标准的SQL语句(DML、DDL、DCL),还提供了一系列...

    Oracle SQLPlus最新手册

    3. **SQLPlus命令列表**:提供了按字母顺序排列的SQLPlus命令列表,便于查找和快速使用。 4. **启动与导航**:讲解了如何启动iSQLPlus和SQLPlus,并介绍了基本的导航操作。 5. **偏好设置与工作区按钮**:展示了...

    oracle sqlplus 常用命令大全.txt

    ### Oracle SQLPlus 常用命令详解 #### 1. 显示系统信息与用户信息 - **`show all`**:此命令用于显示系统级别的设置信息,包括但不限于环境变量、当前会话设置等。 - **`show user`**:显示当前登录数据库的用户名...

    Oracle SQLPlus 手册for windows

    - **格式化输出**:SQLPlus提供了一系列命令,如`COLUMN`和`BREAK`,用于控制查询结果的显示格式,使得输出更易读。 - **脚本执行**:通过`@scriptname.sql`命令,可以执行存储在文件中的SQL或PL/SQL脚本,这对于...

    ORACLE sqlplus命令+数据字典的使用

    ### ORACLE sqlplus命令与数据字典的使用详解 #### 一、ORACLE的启动与关闭 在管理ORACLE数据库时,了解如何正确地启动和关闭数据库是非常重要的。以下是两种不同环境下的操作方法: ##### 1. 单机环境下启动与...

    sqlplus详解,Sqlplus常用命令

    根据提供的文件内容,可以看出这份资料主要关注的是Oracle数据库管理中的SQL*Plus工具的使用方法以及一些常见的命令。接下来,我们将详细解析这些知识点。 ### SQL*Plus简介 SQL*Plus是Oracle提供的一款强大的...

    oracle sqlplus 中spool 的使用

    ### Oracle SQLPlus中Spool命令的使用详解 在Oracle数据库管理与开发过程中,SQLPlus作为一款功能强大的命令行工具被广泛使用。其中,`spool`命令是SQLPlus中的一个重要特性,它允许用户将SQL查询结果或命令输出到...

    Oracle_sqlplus详解.

    在单机环境下,启动Oracle系统通常需要切换到Oracle用户,并运行`sqlplus /nolog`连接到系统,然后用`connect / as sysdba`以SYSDBA权限登录,接着执行`startup`命令来启动数据库。相反,关闭数据库可以使用`...

    Oracle_SQLPLUS常用命令 doc

    #### 三、常用命令详解 1. **SQL*Plus 命令**: - **访问数据库**:使用 `sqlplus 用户名/密码` 命令连接到数据库。 - **显示当前用户**:`SHOW USER` 显示当前登录的用户名。 - **切换用户**:可以在 SQL*Plus ...

    SQLPLUS命令使用大全

    - `FOR[MAT] format`: 设置列的显示格式。 - `HEA[DING] text`: 设置列标题。 - `JUS[TIFY]{L[EFT]|C[ENTER]|C[ENTRE]|R[IGHT]}`: 设置列标题的对齐方式。 - `NEWL[INE]`: 在新的一行开始显示列标题。 - `NUL[L] ...

    oracle命令详解

    Oracle命令详解是一个面向初学者的教程,旨在帮助学习者掌握Oracle数据库的基本操作。在这个教程中,我们将重点关注如何解锁和管理用户账户,以及如何查询和调整数据库的配置参数。 首先,Oracle默认的`scott`用户...

    实现sqlplus上下翻页

    这里分别设置了两个别名:`sqlplus` 和 `rman`,其中`rlwrap`作为前缀,这意味着每次执行这两个命令时都会自动启用`rlwrap`提供的上下翻页功能。 ##### 3. 加载环境变量 最后一步是让新设置的环境变量生效: ```...

    oracle_sqlplus常用命令

    ### Oracle SQL*Plus 常用命令详解 #### 一、概述 Oracle SQL*Plus 是一个功能强大的命令行工具,用于执行 SQL 和 PL/SQL 语句,管理 Oracle 数据库对象,以及创建复杂的报告和输出格式。对于数据库管理员(DBA)、...

    solaris10 sqlplus连接远程ORACLE 11g数据库的配置详解

    接着,创建一个目录作为 Oracle 的基目录,比如 /u01/app/oracle,并确保权限设置正确,以便“oracle”用户可以访问。 之后,编辑用户的环境变量。打开 .bash_profile 文件,添加以下内容: 1. 设置 umask 为 022,...

Global site tag (gtag.js) - Google Analytics