Explain的使用

explainOracle提供的查看SQL语句执行计划的工具,它不需要实际执行SQL语句。开发人员可以通过explain出来的执行计划看SQL语句所访问的路径是不是想要的,是不是最佳的。

1.创建plan_table

plan_tableexplain用来存放执行计划的,创建的脚本是$ORACLE_HOME/rdbms/utlxplan.sql。创建时注意所在的表空间,建议修改后放在TOOLS或其它非系统表空间里。

为了方便其它数据库用户的使用,建议创建一个public同义词。

sqlplus system/manager

SQL>@?/rdbms/admin/utlxplan.sql /*已经修改了表空间的设置*/

SQL>create public synonyms plan_table for plan_table;

SQL>grant ALL on plan_table to public;

2.使用explain

如果要查看一个SQL语句的执行计划,可以用:

 
 

SQLPLUS 会提示

Explained.

表示执行计划已经成功生成。

plan_id不要和已经用过的计划重复,如果不想以后再从plan_table中查看这个计划,则可以不要这一句。

3.查看执行计划

Oracle8i提供了2个脚本用来查看,在$ORACLE_HOME/rdbms/admin目录下,分别是utlxplp.sqlutlxpls.sql,它们会把最近一次执行的explain结果显示出来。其中utlxplp.sql会显示并行的信息,而utlxpls.sql不会显示并行的信息。

执行方法是:

SQL>set linesize 108

SQL>@?/rdbms/admin/utlxplp.sql

SQL>set linesize 80

SQL>@?/rdbms/admin/utlxpls.sql


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/266281/viewspace-495482/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/266281/viewspace-495482/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值