Oracle9i提供了一些相当好的工具,使得对SQL表述式执行计划和追踪信息的查看变得很轻易。在Oracle8i之前的版本里,你需要首先创建一个计划表格并执行一个非凡的句法,才能够查看得到用于SQL的执行计划。要获得具体的统计信息,你就要运行TKPROF这个工具。
而我们现在使用一些SQL*Plus的命令就能够获得任何SQL表述式的执行计划和追踪信息。
SET AUTOTRACE ON EXPLAIN
运行这个SQL*Plus指令会执行你的SQL查询。它还会为这个SQL表述式提供一个执行计划。用于Oracle SQL的执行计划可能会非常复杂,所以你应该先查一下参考资料获得更多的信息,以了解如何解释和调整SQL表达式执行计划的完整指令。
SET AUTOTRACE ON
这一条命令会为Oracle SQL提供具体的统计信息。它会显示花在剖析、执行和存取数据列上的时间量。剖析阶段是指查询在确定最佳执行计划时所花费的时间。这个阶段对于带有五个以上表格的查询来说消耗的资源太大,除非你正在使用ORDERED或者RULE HINTS。
执行阶段是指花费在执行查询上的时间,而存取阶段是指花在将数据列返回给查询上的时间。
新的SQL*Plus指令能够让Oracle的专家们非常轻松地确保其SQL表述式被正确地调整。一个优秀的开发人员的特点就是:他不仅能够写出SQL表述式,还能打造出一个执行速度迅速的SQL。