我正在尝试捕获execution plan
我的查询,PL/SQL developer
如下所示:
select *
from vmi_dimcustomer t1
inner join vmi_factcustomer t2
on t1.customer_num = t2.customer_num ;
Select plan_table_output from table(dbms_xplan.display_cursor(null,null,'basic'));
但我收到了这张纸条:
SQL_ID 9m7787camwh4m, child number 0
begin :id := sys.dbms_transaction.local_transaction_id; end;
NOTE: cannot fetch plan for SQL_ID: 9m7787camwh4m, CHILD_NUMBER: 0
Please verify value of SQL_ID and CHILD_NUMBER;
It could also be that the plan is no longer in cursor cache (check v$sql_plan)
我在这里做错了什么?我在这里搜索,我得到的答案是"set serveroutput off"
。把我不能在 PL/SQL 开发人员上做到这一点。
提前致谢。
PL/SQL Developer 在后台隐式执行附加语句。
dbms_xplan.display_cursor(null,null,'basic')
从先前执行的语句返回信息。它是begin :id := sys.dbms_transaction.local_transaction_id; end;
。执行 SQL 后,在 中找到它
V$SQL
,例如:找到 SQL 后,使用上面的信息: