[20230517]脚本dpcawr1.sql错误导致无法看到outline部分.txt

来源:这里教程网 时间:2026-03-03 18:50:02 作者:

[20230517]脚本dpcawr1.sql错误导致无法看到outline部分.txt --//记录一下自己工作中遇到的问题,我发现我写的dpcawr1.sql无法看到outline部分. > @ desc_proc sys dbms_xplan display_awr INPUT OWNER PACKAGE_NAME OBJECT_NAME sample : @desc_proc sys dbms_stats gather_%_stats OWNER      PACKAGE_NAME         OBJECT_NAME SEQUENCE ARGUMENT_NAME        DATA_TYPE            IN_OUT    DEFAULTED ---------- -------------------- ----------- -------- -------------------- -------------------- --------- ---------- SYS        DBMS_XPLAN           DISPLAY_AWR        1                      TABLE                OUT       N                                                    3 SQL_ID               VARCHAR2             IN        N                                                    4 PLAN_HASH_VALUE      NUMBER               IN        Y                                                    5 DB_ID                NUMBER               IN        Y                                                    6 FORMAT               VARCHAR2             IN        Y --//执行如下: set echo on @ dpcawr1 623b841u978k2  outline 3819449730 --//输出略,无法看到outline部分. --//我记忆里以前都是可以的,为什么在需要解决问题时掉链子.当时事情比较多,暂时放一下,这个确实非常影响当时工作的状态. --//晚上仔细检查脚本,内容如下: $ cat dpcawr1.sql set verify off select * from table(dbms_xplan.display_awr(NVL('&1',NULL),nvl('&3',NULL),NULL,'ALLSTATS LAST PEEKED_BINDS &2 cost -projection -outline')); --//我仔细看了我以前的工作笔记,发现原来没有-projection -outline部分.我估计是某个时候我加上的. --//这样上面的执行展开带入参数后变成如下: select * from table(dbms_xplan.display_awr(NVL('623b841u978k2',NULL),nvl('3819449730',NULL),NULL,'ALLSTATS LAST PEEKED_BINDS outline cost -projection -outline')); --//等于最后又取消了outline部分内容.修改指定自己输入参数2放在最后就ok了. --//最后自己抽一点点时间对这一系列脚本做了整理,以前写的实在时太乱了.修改如下: > cat dpcformat.sql prompt prompt argment : basic typical serial all adaptive advanced peeked_binds outline prompt argment : rows bytes cost partition predicate projection alias remote note iostats memstats allstats last prompt argment : adaptive (12c) hint_report (19c) prompt --//单独收集dbms_xplan.display_cursor相关显示提示. > cat dpcawr.sql -- argument1=sql_id argument2=format argument3=plan_hash_value set verify off --select * from table(dbms_xplan.display_awr('&1',null,null,'all allstats last peeked_binds cost partition note -projection -outline &2')); select * from table(dbms_xplan.display_awr('&1',nvl('&3',null),null,'all allstats last peeked_binds cost partition note -projection -outline &2')); define 3='' @ dpcformat.sql --//做了一些合并,仅仅需要1个dpcawr.sql脚本就可以了.

相关推荐