现在的位置: 首页 > 综合 > 正文

dbms_xplan包-获取执行计划

2013年08月01日 ⁄ 综合 ⁄ 共 927字 ⁄ 字号 评论关闭
  -- display from PLAN_TABLE
  function display(table_name   varchar2      default 'PLAN_TABLE',
                   statement_id varchar2      default null,
                   format       varchar2      default 'TYPICAL',
                   filter_preds varchar2      default null)
  return dbms_xplan_type_table
  pipelined;

  -- display from V$SQL_PLAN (or V$SQL_PLAN_STATISTICS_ALL)
  function display_cursor(sql_id           varchar2 default  null,
                          cursor_child_no  integer  default  0,
                          format           varchar2 default  'TYPICAL')
  return dbms_xplan_type_table
  pipelined;

table_name:包含执行计划的计划表的名称,默认为plan_table。

statement_id:在执行explain plan时通过statement_id参数指定的执行计划的唯一标识符。如果不指定,则展示最近生成的执行计划。
format:一组控制格式的关键字。它们包括高级的关键字BASIC、TYPICAL和ALL,还有其他对输出进行微调的关键字。
filter_preds:这个关键字允许你在针对计划表运行的查询语句的where子句中添加限定条件。可以使用它在计划表中找到包含特定步骤或者有其他某些特征的执行计划。
sql_id:指定一个sql_id来标识V$SQL中的一条缓存的sql语句。
cursor_child_no:指定V$SQL中一个特定的子游标。sql_id与cursor_child_number的组合可以指定V$sql中的一条具体的记录。

FORMAT参数控制执行计划中输出的信息量,有如下三种主要的格式:
TYPICAL 默认的输出设置。输出大部分相关的信息,但是,分布式SQL、投影信息以及其他信息的细节只会在DBMS_XPLAN认为他们直接与此执行计划相关时才会显示。
BASIC 只展示执行计划。
ALL 展示所有信息。

抱歉!评论已关闭.