Oracle执行计划

时间:2012-02-13 22:32:55

标签: oracle toad sql-execution-plan

我正在使用Oracle 11g和Toad for Oracle。如何显示查询的执行计划? 在Sql server中,管理工作室执行计划可以显示为图形格式。在Toad for oracle上是否有类似的功能/工具?

4 个答案:

答案 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”。