网站首页
JSP空间
动态资讯
开源项目
技术文档
资源下载
J2EE资源
客户论坛
在线支付
 
  技术文档>>数据库技术>>Oracle技术>>Oracle开发>查看文档  
  实例讲解:sqlplus的set系统变量及其得? size= (1)     
  文章作者:未知  文章来源:赛迪网技术社区  
  查看:93次  录入:管理员--2008-01-31  
 

set系统变量的功能和使用方法:

变量名 说明

set appinfo{on|off|text}

脚本登陆到dbms_application_info这个管理用的package中。

set arraysize{15|n}

是sql*plus从db取回数据是每次的list大小,但是这里有点需要声明,其实取回的时候第一次都是只取1条记录的,第二开始才会按照arraysize指定的数值来返回记录数,这个变量的设定范围是从1~5000的整数,默认为15,不建议取的太大,会影响hit的命中率,对于这点以后我将会在tuning的相关叙述中证明。

set autocommit{on|off|immediate|n}

自动commit,可是设定开启,关闭,实时和多少条记录后commit

set autoprint{on|off}

自动打印变量值,如果autoprint为on是那么在procedure的执行完是大家都将可以看到屏幕上有打印变量的值,关闭是则只显示“过程执行完毕”这样的提示,在调试的时候建议打开

set autorecovery{on|off}

设定为on时将以默认的文件名来记录redo log,当需要恢复时使用recover automatic database,否则只能使用recover database。

set autotrace{on|off|trace [only]}[explain][statistics]

对正常执行完毕的sql dml语句自动生成报表信息,在tuning的时候比较有用,执行对象需要被赋予plustrace角色。在这里有的人可能会发现自己的对象集合中没有plan_table这张表(请用sys用户来建表),下面我给出建表的ddl,下面的几个命令请用sys用户来执行:

create table plan_table (

statement_id varchar2(30),

timestamp date,

remarks varchar2(80),

operation varchar2(30),

options varchar2(30),

object_node varchar2(128),

object_owner varchar2(30),

object_name varchar2(30),

object_instance number(38),

object_type varchar2(30),

optimizer varchar2(255),

search_columns number,

id number(38),

parent_id number(38),

position number(38),

cost number(38),

cardinality number(38),

bytes number(38),

other_tag varchar2(255),

partition_start varchar2(255),

partition_stop varchar2(255),

partition_id number(38),

other long,

distribution varchar2(30)

);

这样plan_table就生成了,但是系统里还是没有plustrace这个role,别急,create role的脚本在?sqlplusadminplustrce.sql,在这里我特别声明一下,我刚开始学oracle的时候总是不明白为什么前面是一个问号,后来才知道这个?号代表定位$oracle_home变量指定的路径,可能我比较菜吧。。。

言归正传,plustrace生成以后赋给public用于生成统计report,将plan_table的所有权限也赋予给public用于生成执行计划report

下面是关于autotrace参数的解释:

option 说明

set autotrace on 同时输出执行结果以及统计信息和执行计划信息。

set autotrace off 关闭执行计划和统计信息报表

set autotrace on explain 只打开执行计划报销,显示命令结果,不显示统计信息。

set autotrace on statistics 只打开统计信息报销,显示命令结果,不显示执行计划。

set autotrace traceonly 如果是这种形态的话不显示命令的执行结果,同时显示执行计划和统计信息,但是在traceonly的后面仍然可以追加explain或者statistics,等同于set autotrace on [explain|statistics]但是不显示执行结果

set blockterminator {.|c}

定义表示结束pl/sql块结束的字符。

set cmdsep{;|c|on|off}

sqlplus的命令行区分字符,默认为off,也就是说只有回车才能输入下一条命令并开始执行,如果改为on状态的会自动设定成“;”, 就可以在一行内用“;”分隔多条sqlplus命令。类似于:

wupei@pye.us.oracle.com> show all; set autotrace off;

set colsep{ |text}

注释:列于列之间的分隔字符,可以用select语句来验证。

 
 
上一篇: “字符型”转换成“日期型”的实例脚本    下一篇: 带你深入了解oracle中几个相对特殊的函数
  相关文档
讲解数据仓库实施过程所需要考虑的步骤 02-20
数据库应用系统的开发具体分为哪几个阶段 (1) 03-04
oracle数据库10gr2中stream多源复制方法 08-05
判断字段中是否含有中文字符的实例脚本 01-31
如何使用raw device构建oracle数据库 04-12
相关的技术培训(oracle) 01-15
帮你解决Oracle 9i和Tomcat的端口冲突 05-27
初学Oracle最经常碰到的错误及解决方案 08-05
在oracle数据库中处理数据的高并发响应 07-30
数据库维护 01-15
如何查看"control file"中保存的内容 02-27
Oracle数据库如何查询记录时给记录加锁 06-10
教你利用Rownum来限制查询所返回的行数 06-17
oracle developer 2000中的一些实用语句 08-18
深入讲解数据库中user和schema的关系 04-08
初学者必读:sqlplus的autotrace的设置 07-24
_row_cache_cursors参数应当如何设置 04-16
对系统默认的约束名和索引名进行重命名 03-03
教你轻松掌握Oracle数据库触发器的组成 09-29
Oracle数据库中单行字符串函数简介 04-11
返回首页 | 关于我们 | J网章程 | JSP空间合租 | 客服中心 | 免责声明 | 常见问题 | 参观机房
本站主机空间代理至厦门市华众网络科技有限公司
《中华人民共和国增值电信业务经营许可证》
编号:闽B2-20050079
@2005-2008福建JSP技术网 版权所有 闽ICP备05000928号
厦门(总部):13616026886 福州:0591-87655121
邮箱:admin@fjjsp.com 站长QQ,点击这里给我发消息