设置SQL*Plus的运行环境

设置SQL*Plus的运行环境

 

1. 语法格式:set system_variable value
    system_variable:变量名
    value:变量值


2. SET命令的常用变量名、可选值(红色为默认值)及其说明:

变量名 可选值 说明
ARRAY[SIZE] 20|n 设置查询行数,是SQL*Plus一次从数据库获取的行数。大的值可提高查询和子查询的有效性,可获取许多行,但也需要更多的内存。当超过1000时,其效果不大。
AUTO[COMMIT] OFF|ON|IMMEDIATE 控制Oracle对数据库的修改的提交。设置为ON时,在Oracle执行每个SQL命令或PL/SQL块后对数据库自动提交修改;设置为OFF时,则制止自动提交,需要手工地提交修改(即需要执行COMMIT命令);IMMEDAITE功能同ON
BLO[CKTERMINATOR] .|C 设置非字母数字字符,用于结束PL/SQL块。要执行块时,必须发出RUN命令或/命令。
CMDS[EP] ;|C|OFF|ON 设置非字母数字字符,用于分隔在一行中输入的多个SQL*Plus命令,ON或OFF控制在一行中是否能输入多个命令。ON时将自动地将命令分隔符设为分号(;),其中C表示所置字符。
ECHO OFF|ON 控制START命令是否列出命令文件中的每一命令,若设置为ON时,则列出命令;若为OFF,则制止列清单。
FLU[SH] OFF|ON 控制输出送至用户的显示设备。设置为OFF时,运行操作系统做缓冲区输出;设置为ON时,不允许缓冲。仅当非交互方式运行命令文件时,使用OFF,这样可减少程序I/O总数,从而改进性能。
HEA[DING] OFF|ON 控制报表中列标题的打印。设置为ON时,在报表中打印列标题;为OFF时禁止打印列标题。
LIN[ESIZE] 80|n 设置SQL*Plus在一行中显示的最多字符总数,它还控制在TTITLE和BTITLE中对准中心的文本和右对齐文本。可定义LINESIZE为1至最大值,其最大值依赖于操作系统。
NEWP[AGE] 1|n 设置一页中空行的数量。一页数据行最后一行至下一页标题之间的空白行数。
NULL text 设置表示空值(NULL)的文本,如果NULL没有文本,则显示空格(默认时)。使用COLUMN命令中的NULL子句可控制NULL变量对该列的设置。
NUMF[ORMAT] 格式(掩码) 设置显示数字的默认格式,该格式是数字格式。常用掩码及说明如下:9:查询结果中数字替换格式中的掩码;0:格式中的值屏蔽掉查询结果中的数字;$:在查询结果中的数字前添加美元前缀;S为数字显示符号类型,通常用于显示查询结果中的正负数字;,:在字符“,”位置上旋转逗号。
PAGES[IZE] 14|n 设置从顶部标题至页结束之间的行数。当SQL*Plus返回查询结果时,它首先会显示用户所选择数据的列标题,然后在相应列标题下显示数据行,上下两个列标题所在行之间的空间就是SQL*Plus的一页。一页中所显示的数据行的数量就是PAGESIZE变量的值。
PAU[SE] OFF|ON|TEXT 设置SQL*Plus输出结果是否滚动显示。当设置为ON时,表示输出结果的每一页都暂停,用户按Enter键后继续显示。在设置PAUSE的值为ON后,若再设置字符串时一一设置TEXT的值,则每次暂停都将显示该字符串。
RECSEP WR[APPED]|EA[CH]|OFF 指定显示或打印记录分行符的条件。一个记录分行符是由RECSEPCHAR指定的字符组成的单行,空格为RECSEPCHAR的默认字符。
SERVEROUT[PUT] OFF|ON|[SIZE n] 控制在SQL*Plus中的存储过程是否显示输出。若设置为OFF,则禁止;若设置为ON,则显示输出。SIZE设置缓冲输出的字节数,缺省值为2000,n不能少于2000或大于100万。
SHOW[MODE] OFF|ON 控制SQL*Plus在执行SET命令时是否列出其新老值old或new的设置,其中,ON表示列出新老值
SPA[CE] 1|n 设置输出列之间空格的数目,其最大值为10。
SQLCO[NTINUE] >;|文本 在一附加行上继续某个SQL*Plus命令时,SQL*Plus以该设置的字符序列进行提示。
SQLN[UMBER] OFF|ON 为SQL命令和PL/SQL块的第二行和后继行设置提示。若为ON,则提示行号;若为OFF,则提示设置为SQLPROMPT的值。
TI[ME] OFF|ON 控制当前日期的显示。若为ON,则在每条命令提示前显示当前时间;若为OFF,则禁止时间的显示。
TIMI[NG] OFF|ON 控制时间统计的显示。若为ON,则显示每一个运行的SQL命令或PL/SQL块的时间统计;若为OFF,则禁止每一个命令的时间统计。
UND[ERLINE] -|C|OFF|ON 设置用于SQL*Plus报表下划线列标题的字符。ON或OFF将下划线设置成开或关状态。
VER[IFY] OFF|ON 控制SQL*Plus用值替换前、后是否列出命令的文本。若为ON,则显示文本;若为OFF,则禁止列清单。
WRA[P] OFF|ON 控制SQL*Plus是否截断数据项的显示;若为OFF,则截断数据项;若为ON,则充许数据项缠绕到下一行。

 

3. 注意:通过SET命令设置的环境变量是临时的,不是永久的。当用户退出SQL*Plus环境后,用户设置的环境参数会全部丢失。


4. 使用SET命令设置运行环境

使用“set time on”命令设置在SQL*Plus命令提示符“SQL>”前面显示当前的系统时间:

SQL> set time on
10:27:06 SQL>

 
使用“$999,999,999.00”格式显示scott.emp表中的雇员工资。


 

猜你喜欢

转载自elviszhao.iteye.com/blog/2275281
今日推荐