我们知道sqlplus模式下,select查询的时候经常会遇到返回的记录折行,这时候我们往往会设置行宽,列宽和页面记录。

设置行宽:set linesize 200 表示行宽被设置为200的字符

设置列宽:column name format a40 设置name列为40个字符,a表示alphanumeric,字符的意思

http://docs.oracle.com/cd/B19306_01/server.102/b14357/ch6.htm

设置页面记录: set pagesize 20 设置每20行为一列


sqlplus命令是会话级的,exit之后就消失了。setlinesize 5000 exit之后作用就消失了


举例:

set pagesize 10 一页展示10

wKiom1MnIJGT9BHHAAIwKoE7upw221.jpg

setpagesize 5 一页展示5

wKiom1MnINXiu-PrAADBQ6sVrqs376.jpg


linesize默认值是80,可以通过show linesize 查看


setlinesize 40 页面宽度为40个字符,如果超过sqlplus的命令行窗口宽度就不起作用了
查询结果中,每列的宽度默认是根据该列定义的宽度显示的,比如这列定义
40字符,那么没有使用col xxx format axxx 限制该列的宽度,那么该列就以所定义的40字节为宽度。但是因为sqlplus命令窗口的宽度有限,所以有的列定义为5000字符的,其最宽只能按照sqlplus命令行窗口的宽度来显示


wKiom1MnI0WiwC6gAAGZn3cY-qk480.jpg

wKioL1MnI73y6HxgAAFb5avTdwU222.jpg

wKioL1MnJADRYttSAAGt1_OwDLc206.jpg

wKiom1MnJFSwlwz0AAFtZ6x33b0676.jpg

wKiom1MnJHyRLi4fAALcmppaTWM359.jpg

setlinesize 80

wKiom1MnIkWzPNTvAAF7-j7PxTk121.jpg

SQL> col valueformat a40

SQL> col name format a40

SQL> selectname,value from v$parameter;

wKiom1MnIoqhIoIYAACt7IDAH1o827.jpg