今天就跟大家聊聊有关怎么理解SQL*Plus Set参数,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
利用SQL*Plus维护系统变量(也称set变量)可为SQL*Plus交互建立一个特殊的环境,如:设置number数据的显示宽度,设置每页的行数,设置列的宽度等。可用set命令改变这些系统变量,也可用show命令列出它们。以下是全部的用法,使用set命令的语法如下:
set 系统变量值
其中系统变量及其可选值如下:
arraysize | {20(默认值)|n} | 设置一批的行数,是sqlplus一次从数据库获取的行数,有效值为1至5000。大的值可提高查询和子查询的有效性,可获取许多行,但也需要更多的内存。当超过1000时,其效果不大。 |
autocommit | {off(默认值)|on|immediate} | 控制oracle对数据库的修改的提交。设置on时,在oracle执行每个sql命令或pl/sql块后对数据库提交修改;设置置off时,则制止自动提交,需要手工地提交修改。例如用sql的commit命令,immediate功能同on。 |
blockterminator | {.(默认值)|c} | 用于结束pl/sql块。要执行块时必须发出run命令或/命令. |
cmdsep | { |c|off(默认值)|on} | 用于分隔在一行中输入的多个sql/plus命令。on或off控制在一行中是否能输入多个命令。on时将自动地将命令分隔符设为分号(其中c表示所置字符)。 |
compatibility | {v5|v6|v7|native(默认值)} | 指定当前所连接的oracle版本。如果当前oracle的版本为5,则置compatibility为v5,为版本6时置成v6,为版本7时置成v7。如果希望由数据库决定该设置,则置成native。 |
concat | {.(默认值)|c|off|on(默认值)} | 设置结束一替换变量引用的字符。在中止替换变量引用字符之后可跟所有字符作为体会组成部分,否则sqlplus将解释为替换变量名的一部分。当concat开关为on时,sqlplus可重置concat的值为点(.)。 |
copycommit | {0(默认值)|n} | 控制copy命令提交对数据库修改的批数。每次拷贝n批后将提交到目标数据库。有效值为0到5000。可用变量arraysize设置一批的大小。如果置copycommit为0,则仅在copy操作结束时执行一次提交。 |
crt | crt | 改变sqlplus runform命令使用的缺省crt文件。如果设置crt不包含什么,则crt仅包含’’’’。如果在一个form的系统调用期间要使用new.crt(缺省crt是old.crt)。可按下列形式调用form: sql>runform –c new form名 或者sql>set crt new sql>runform form名 第二中方法存储crt选择以致在下次运行runform命令(是在同一次sqlplus交互中)时,不需要指定。 |
define | {&|c|off|on(默认值)} | 设置在替换变量时所使用的字符。on或off控制sqlplus是否扫描替换变量的命令及用他们的值代替。define的on或off的设置控制scan变量的设置。 |
echo | {off|on} | 控制start命令是否列出命令文件中的每一命令。为on时,列出命令;为off时,制止列清单。 |
embedded | {off(默认值)|on} | 控制每一报表在一页中开始的地方。为off时,迫使每一报表是在新页的顶部开始;为on时,运行一报表在一页的任何位置开始。 |
escape | {\(默认值)|c|off(默认值)|on} | 定义作为escape字符的字符。为off时,使escape字符不起作用;为on时,使escape字符起作用。 |
feedback | {6(默认值)|n|off|on} | 显示由查询返回的记录数。on和off置显示为开或关。置feedback为on时,等价于置n为1;如果置feedback为0 等价于将它置成off。 |
flush | {off|on(默认值)} | 控制输出送至用户的显示设备。为off时,运行操作系统做缓冲区输出;为on时,不允许缓冲。仅当非交互方式运行命令文件时使用off 这样可减少程序i/o总数,从而改进性能。 |
heading | {off|on(默认值)} | 控制报表中列的打印。为on时,在报表中打印列;为off时,禁止打印列。 |
headsep | {|(默认值)|c|off|on(默认值)} | 定义分隔字符。可在column命令中使用分隔符,将列分成多行。on和off将分隔置成开或关。当分隔为关(off)时,sqlplus打印分隔符像任何字符一样。 |
linesize | {80(默认值)|n} | 设置sqlplus在一行中显示的字符总数,它还控制在ttitle和btitle中对准中心的文本和右对齐文本。可定义linesize为1至最大值,其最大值依赖于操作系统。 |
long | {80(默认值)|n} | 为显示和拷贝long类型值的最大宽度的设置。对于oracle7,n的最大值为2g字节;对于版本6,最大值为32767。 |
longchunksize | {80(默认值)|n} | 为sqlplus检索long类型值的增量大小。由于内存的限制,可按增量检索,该变量仅应用于oracle7。 |
maxdata | n | 设置sqlplus可处理的最大行宽字符数,其缺省值和最大值在不同操作系统中是可变的。 |
newpage | {1(默认值)|n} | 设置每一页的头和顶部之间要打印的空行数。如果为0,在页之间送一换号符,并在许多终端上清屏。 |
null | text | 设置表示空值(null)的文本。如果null没有文本,则显示空格(缺省时)。使用column命令中的null子句可控制null变量对该列的设置。 |
numformat | 格式 | 设置显示数值的缺省格式,该格式是数值格式。 |
numwidth | {10(默认值)|n} | 对显示数值设置缺省宽度。 |
pagesize | {14(默认值)|n} | 设置从顶部至页结束之间的行数。在11英寸长的纸上打印报表,其值为54,上下各留一英寸(newpage值为6)。 |
pause | {off(默认值)|on|text} | 在显示报表时,控制终端滚动。在每一暂停时,必须按return键。on将引起sqlplus在每一报表输出页开始时暂停。所指定的文本是每一次sqlplus暂停时显示的文本。如果要键入多个词,必须用单引号将文本括起来。 |
recsep | {wrapped(默认值)|each|off} | recsep告诉sqlplus在哪儿做记录分隔。例如将recsep置成wrapped,在每一缠绕行之后,打印记录分行符;如果将recsep置成each,sqlplus在每一行后打印一记录分行符;如果将recsep置成off,sqlplus不打印分行符。 |
recsepchar | {|c} | 指定显示或打印记录分行符的条件。一个记录分行符,是由recsepchar指定的字符组成的单行。空格为recsepchar的默认字符。 |
scan | {off|on(默认值)} | 控制对存在的替换变量和值的扫描。off禁止替换变量和值的处理;on则允许正常处理。 |
serveroutput | {off|on}size | 控制在sqlplus中的存储过程是否显示输出。off时为禁止;on时则显示输出。size设置缓冲输出的字节数,缺省值为2000。n不能小于2000或大于一百万。 |
showmode | {off(默认值)|on} | 控制sqlplus在执行set命令时是否列出其新老值old或new的设置。 |
space | {1(默认值)|n} | 设置输出列之间空格的数目,其最大值为10。 |
sqlcase | {mixed(默认值)|lower|upper} | 先于执行之前,将sql命令和pl/sql块的大小写进行转换。sqlplus将转换命令中的全部文本,包括带引号的直接量和标示符。sqlcase不改变sql缓冲区本身。 |
sqlcontinue | {>(默认值)|文本} | 在一附加行上继续一sqlplus命令时,sqlplus以该设置的字符序列进行提示。 |
sqlnumber | {off|on(默认值)} | 为sql命令和pl/sql块的第二行和后继行设置提示。为on时,提示行号;为off时,提示设置为sqlprompt的值。 |
sqlperfix | {#(默认值)|c} | 设置sqlplus前缀字符。在键入一sql命令或pl/sql块时,可在单独行上键入一sqlplus命令,由sqlplus的前缀字符做前缀。sqlplus直接执行该命令,不影响sql命令或pl/sql块。前缀字符必须是非字母数字字符。 |
sqlprompt | {sql>(默认值)|文本} | 设置sqlplus的命令提示符。 |
sqlterminator | {(默认值)|c|off|on(默认值)} | 设置用于结束和执行sql命令的字符。off意味着sqlplus不识别命令终止符,用键入空行来结束sql命令;on重设置终止符为默认的分号。 |
suffix | {sql(默认值)|文本} | 设置缺省文件的后缀。sqlplus在命令中使用,来引用命令文件。suffix不控制输出(spool)文件的扩展名。 |
tab | {off|on(默认值)} | 决定sqlplus在终端输出中如何格式化空白空间。为off时,在输出中使用空格格式化空白空间;为on时,用tab字符。tab的缺省值依赖于系统,用show tab命令可查看该缺省值。 |
termout | {off|on(默认值)} | 控制由文件执行命令所产生的输出的显示。off禁止显示,以致从一个命令文件假脱机输出,在屏幕上看不到输出;on时显示输出。Termout off 不影响交互地进行命令的输出。 |
time | {off(默认值)|on} | 控制当前日期的显示。on时,在每条命令提示前显示当前时间;off时禁止时间的显示。 |
timing | {off(默认值)|on} | 控制时间统计的显示。on时,显示每一个运行的sql命令或pl/sql块的时间统计;off时,禁止每一个命令的时间统计。 |
trimout | {off|on(默认值)} | 决定sqlplus在每一显示行的末端是否允许带空格。on时将每行尾部的空格去了,特别当从慢速的通信设备存取sqlplus时可改进性能;off时允许sqlplus显示尾部的空格。trimout on不影响假脱机输出。设置tab on时,sqlplus忽略trimout on。 |
underline | {-(默认值)|c|off|on(默认值)} | 设置用在sqlplus报表中下划线列的字符。on或off将下划线置成开或关。 |
verify | {off|on(默认值)} | 控制sqlplus用值替换前、后是否列出命令的文本。on时显示文本;off时禁止列清单。 |
wrap | {off|on(默认值)} | 控制sqlplus是否截断数据项的显示。off时截断数据项;on时允许数据项缠绕到下一行。在column命令中使用wrapped和truncated子句可控制对指定列的wrap的设置。 |
看完上述内容,你们对怎么理解SQL*Plus Set参数有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支持。