暂无图片
暂无图片
1
暂无图片
暂无图片
暂无图片

SQLPLUS之set常用设置

原创 徐钢炮 2020-03-11
6573

为方便sqlplus显示,我们可以通过set设置相关的参数来显示输出数据格式,例如做sql追踪、spool等,下面将部分常用设置记录下,方便使用:

1、查看set帮助文档
help set
2、查看set 参数值
show all;
show var_value ;
3、常用set参数以及含义
set echo {on|off};##在用一个start命令执行sql脚本时,是否显示脚本中正在执行的命令(缺省为on)
set feedback {6|n|on|off};##是否显示当前sql语句查询或修改的行数(例如查询结果后面显示的14 rows selected.),默认只有结果大于6行时才会显示行数,如果设置set feedback 1,无论结果有多少行都显示,如果设置set feedback off,不显示行数。(缺省为on)
set timing {on|off};##是否显示每个sql语句执行所花费的时间(例如查询结果后面显示的Elapsed: 00:00:44.85)。(缺省为off)
set heading {on|off}; ##是否显示列标题,如果设置set heading off,不显示列标题,而是以空行代替。 (缺省为on)
set long {80|n};##设置long类型列的在缓冲区存放的字节数
set linesize {80|n};##设置输出一行所能容纳的字符数,默认一行长度为80个字符,自己可以定义,例如set linesize 100.(缺省为80 )
set pagesize {24|n};##设置每页所能容纳的行数,默认一页有24行,自己可以定义,例如set pagesize 50。通过设置set pagesize 0来用一页显示所有行数即不分页显示。
set warp {on|off};##当查询结果输出行的长度大于设置的linesize时,当warp设置为on时,多余的字符会另起一行,如果设置为off,输出行多余的字符会被切除,不予显示。
set serveroutput {on|off};##是否显示使用DBMS_OUTPUT.PUT_LINE包输出的结果,在编写存储过程时,有些情况需要使用dbms_output.put_line输出必要的信息,只有将serveroutput 设置为on,输出的信息才能显示在屏幕中。
set termout {on|off};##在使用spool命令将查询的结果保存到一个文件里时,如果数据量很大,将结果输出到屏幕是会消耗资源,如果设置set termout off,只把输出结果保存到文件中,不会输出在屏幕。(缺省为on)
set trimout {on|off};##将在spool中输出的每行后面多余的空格去掉。(缺省为off)
set trimspool on;##去除spool输出结果中每行的结尾空格(缺省为off)
set markup html {on|off};##将sqlplus的输出格式以html样式展现,此命令可以和spool命令联用
set verify off; ##不显示替代变量被替代前后的语句,可以关闭和打开提示确认信息old 1和new 1的显示
set numwidth 16;##设置number类型字段长度为16(缺省为10)
set colsep ’ ';##列输出分隔符
set autotrace on ;##设置允许对执行的sql进行分析,SET AUTOT[RACE] {OFF | ON | TRACE[ONLY]} [EXP[LAIN]] [STAT[ISTICS]]
col value format 999999;##防止数字列查询显示为#号,可以通过设置列格式

4、附录
1)spool 设置
set feedback off;
set echo off;
set lineszie 200;
set pagesize 0;
set verify off;
set heading off;
set termout off;
set warp on;
col col_name format 999999;

2)sqlplus登陆设置
define _editor=vi
set serveroutput on size 1000000
set trimspool on
set long 5000
set linesize 100
set pagesize 9999
column plan_plus_exp format a80
column global_name new_value gname
set termout off
define gname=idle
column global_name new_value gname
select lower(user) || ‘@’ || substr( global_name, 1,
decode( dot, 0, length(global_name), dot-1) ) global_name
from (select global_name, instr(global_name,’.’) dot from global_name );
set sqlprompt '&gname> ’
set termout on

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/27067062/viewspace-2124231/,如需转载,请注明出处,否则将追究法律责任。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论