oracle设置查看格式,Oracle 设置显示格式

4f1150b881333f12a311ae9ef34da474.png1. 改变列的显示长度 

4f1150b881333f12a311ae9ef34da474.pngCOLUMN column_nameFOR[MAT]format 

4f1150b881333f12a311ae9ef34da474.png

4f1150b881333f12a311ae9ef34da474.png备注:  

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

4f1150b881333f12a311ae9ef34da474.png如果SQL*PLUS的WARP变量的值被设置为"开"(默认值), 那么字段的内容将会在format命令规定的长度处折行, 否则的话超过规定长度的后续字符将会被截取。如果你有多个相同显示属性的列需要设置,那么使用column 字段名 like 你想要复制显示属性的字段heading 字段名。注意如果不加上后面heading 字段名那么复制的时候连字段名都会复制过去,显然不适合一般要求。

2. 格式化NUMBER类型列的显示

4f1150b881333f12a311ae9ef34da474.pngSQL>COLUMNSAL FORMAT $99,9904f1150b881333f12a311ae9ef34da474.png

4f1150b881333f12a311ae9ef34da474.png3. 显示列值时,如果列值为NULL值,用text值代替NULL值 

4f1150b881333f12a311ae9ef34da474.pngCOMM NUL[L]text4f1150b881333f12a311ae9ef34da474.pngSQL>COL COMM NUL[L]text4f1150b881333f12a311ae9ef34da474.png

4f1150b881333f12a311ae9ef34da474.png4. 设置一个列的回绕方式 

4f1150b881333f12a311ae9ef34da474.pngCOLUMN WRA[PPED]|WOR[D_WRAPPED]|TRU[NCATED]4f1150b881333f12a311ae9ef34da474.png

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

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

CLEAR COLUMNS

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

SQL>desctesttable;

NameNull?    Type----------------------------------------- -------- ----------------------------IDNUMBERNAMEVARCHAR2(20)

REMARKVARCHAR2(50)

SALARYNUMBERSQL>select*fromtesttable;

ID NAME---------- ----------------------------------------REMARK--------------------------------------------------------------------------------SALARY----------1paul99999

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

①分别设置输出列的长度为2、10、6、8

②分别设置输出列的列名居中

③格式化Salary列的值为$999,999

④将Remark列的空值替换为字符串User description

⑤设置Remark列的回绕方式为按单词回绕

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

SQL>columnID justify center

SQL>columnName justify center format a10

SQL>columnRemark justify center format a6NULL'User description'word_wrapped

SQL>columnsalary justifyrightformat $999,999SQL>select*fromtesttable;

ID        NAME    REMARK    SALARY---------- ---------- ------ ---------1paulUser$99,999descri

ption

看看其中的SQL语句:

ColumnRemark justify center format a6NULL'User description'word_wrapped。

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

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

4f1150b881333f12a311ae9ef34da474.png1.设置一行可以容纳的字符数 

4f1150b881333f12a311ae9ef34da474.pngSQL>SETLIN[ESIZE]{80|n} 

4f1150b881333f12a311ae9ef34da474.png如果一行的输出内容大于设置的一行可容纳的字符数,则折行显示。 

4f1150b881333f12a311ae9ef34da474.png4f1150b881333f12a311ae9ef34da474.png

4f1150b881333f12a311ae9ef34da474.png2.设置一页有多少行数 

4f1150b881333f12a311ae9ef34da474.pngSQL>SETPAGES[IZE]{24|n} 

4f1150b881333f12a311ae9ef34da474.png如果设为0,则所有的输出内容为一页并且不显示列标题 

4f1150b881333f12a311ae9ef34da474.png3.设置页与页之间的分隔 

4f1150b881333f12a311ae9ef34da474.pngSQL>SETNEWP[AGE]{1|n|NONE} 

4f1150b881333f12a311ae9ef34da474.png当set newpage0时,会在每页的开头有一个小的黑方框。 

4f1150b881333f12a311ae9ef34da474.png当set newpage n 时,会在页和页之间隔着n个空行。 

4f1150b881333f12a311ae9ef34da474.png当set newpage none 时,会在页和页之间没有任何间隔。 

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

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

SQL>select*fromtesttable;

ID NAME       REMARK---------- ---------- --------------------------------------------------REG_DATE       SALARY---------- ----------1paul lin07-6月-0855002bob lin    commonuser06-6月-086500SQL>

下面我们要做的就是:

①调整页面最大显示长度为200

②设置每页只显示一条记录

③每页之间间隔两个空

SQL>setlinesize200pagesize1newpage2;

SQL>SQL>/1paul lin07-6月-0855002bob lin    commonuser06-6月-086500SQL>

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

SQL>setlinesize200pagesize999newpage;

SQL>SQL>SQL>/ID NAME       REMARK                                             REG_DATE       SALARY---------- ---------- -------------------------------------------------- ---------- ----------1paul lin07-6月-0855002bob lin    commonuser06-6月-086500SQL>

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值