cannot set autotrace

今天在PL/SQL DEVELOPER工具中,从Command窗口输入set autotrace on 报错:“cannot set autotrace”
    SQL> set autotrace on
    Cannot SET AUTOTRACE

    可能是当初没有进行设置吧,不过10g好像不用设置,不管他了,按照相关的操作做一遍吧,印象也比较深刻,于是参考eygle的blog,对我的测试环境做了如下操作:

1. create table PLAN_TABLE

D:\oracle\ora92>sqlplus /nolog
SQL> connect / as sysdba
已连接。
SQL>@?\rdbms\admin\utlxplan.sql
表已创建。(create table PLAN_TABLE)

2. create synonym plan_table

SQL> create public synonym plan_table for plan_table;
同义词已创建。

3. grant priv on plan_table

SQL> grant all on plan_table to public/user ;
授权成功。

4. creat role plustrace

SQL>@?\sqlplus\admin\plustrce.sql
SQL>
SQL> drop role plustrace;
drop role plustrace
*
ERROR 位于第 1 行:
ORA-01919: 角色'PLUSTRACE'不存在
SQL> create role plustrace;
角色已创建
SQL> grant select on v_$sesstat to plustrace;
授权成功。
SQL> grant select on v_$statname to plustrace;
授权成功。
SQL> grant select on v_$session to plustrace;
授权成功。
SQL> grant plustrace to dba with admin option;
授权成功。
SQL> set echo off

做完授权以后,再次登陆PL/SQL DEVELOPER工具中的COMMAND窗口,执行 set autotrace on还是报错:“cannot set autotrace”,奇怪,怀疑是工具的问题,于是输入cmd,用sqlplus登陆,结果是可以的,操作步骤如下:
SQL> connect leiz/leiz
已连接。
SQL> set autotrace on

所以断定是PL/SQL DEVELOPER工具的问题,google一下,查到一些朋友和我遇到了同样的问题:pl/sql   developer并不完全支持所有的sql   plus的命令。set   autotrace就属于不支持的语句,此外还有show   parameters   ...,whenever   ...等。在这里记录一下。

关于Autotrace几个常用选项的说明:

SET AUTOTRACE OFF ---------------- 不生成AUTOTRACE 报告,这是缺省模式
SET AUTOTRACE ON EXPLAIN ------ AUTOTRACE只显示优化器执行路径报告
SET AUTOTRACE ON STATISTICS -- 只显示执行统计信息
SET AUTOTRACE ON ----------------- 包含执行计划和统计信息
SET AUTOTRACE TRACEONLY ------ 同set autotrace on,但是不显示查询输出

参考文献:

1.http://www.eygle.com/faq/AutoTrace.htm

2.http://topic.csdn.net/t/20050920/14/4281733.html


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值