我正在使用Oracle 11g和Toad for Oracle。如何显示查询的执行计划? 在Sql server中,管理工作室执行计划可以显示为图形格式。在Toad for oracle上是否有类似的功能/工具?
答案 0 :(得分:21)
CTRL-E
确保您使用分号(以及上面的查询)结束查询
编辑:
您需要设置TOAD计划表以供使用。如果您认为它已在您的数据库上设置,那么您可能只需要被授予访问权限。或者在我稍微老一点的TOAD版本中,它位于:
数据库 - >管理 - >服务器端对象向导。从这里,您可以在您选择的模式中创建计划表。
答案 1 :(得分:2)
您应该使用Oracle提供的脚本创建PLAN_TABLE 它名为UTLXPLAN.SQL,位于其中一个安装文件夹中 在数据库服务器上。
然后,您应该使用EXPLAIN PLAN语句为SQL语句生成计划,如下所示: EXPLAIN PLAN SET STATEMENT_ID ='your_identifier_for_this_plan' 对于 ......你的陈述......;
然后,您可以使用PLAN_TABLE中的select(通常使用分层查询)或DBMS_XPLAN.DISPLAY_PLAN过程来显示计划。 在UTLXPLAN.SQL文件所在的同一文件夹中,通常存在 使用此过程的示例。
此外,在SQL * PLUS中,您可以使用SET AUTOTRACE功能。
答案 2 :(得分:1)
TOAD FOR ORACLE
这帮助了我How do I view the Explain Plan in Oracle Sql developer?,我只是写了他们在sql developer中所做的事情,并在toad编辑器中编写然后执行。
Example
explain plan for select field1, field2 from TABLE_NAME;
SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY);
答案 3 :(得分:1)
检查所有查询是否以分号结尾,将光标放在要分析的查询上,然后按 CTRL-E 。
第一次有弹出窗口要求提供计划表的名称时,它会建议TOAD_PLAN_TABLE
,但最好使用应该已经可用的标准Oracle表PLAN_TABLE
。因此,请输入PLAN_TABLE
代替TOAD_PLAN_TABLE
(不指定架构),然后单击“确定”。您应该收到一条消息,说明该对象已经存在:再次点击确定以确认它。现在再次尝试CTRL-E,你将获得解释计划。
要查看/更改当前配置的计划表名称,请转到菜单“View / Toad Options / Oracle General”。