Sqlplus ile bir sorgunun execution planının görüntülenmesi
Sorgularımızın hangi execution plan ile çalışacağını sqlplus ile de görüntüleyebiliriz. Bunun için sqlplus ile explain plan aracını kullanabiliriz.
Explain plan aracını kullanabilmek için ilgili şema altında PLAN_TABLE tabosuna ihtiyaç vardır. Bazı araçlar örneğin Toad bu tabloyu ilk execution plan görüntülediğinizde otomatik olarak oluşturacaktır. Bu tabloyu aşağıdaki gibi siz de oluşturabilirsiniz.
SQL> @$ORACLE_HOME/rdbms/admin/utlxplan.sql Table created.
Sorgunun execution planını görüntülemek :
SQL> set autotrace traceonly explain SQL> select sysdate from dual; Execution Plan ---------------------------------------------------------- Plan hash value: 1546270724 ----------------------------------------------------------------- | Id | Operation | Name | Rows | Cost (%CPU)| Time | ----------------------------------------------------------------- | 0 | SELECT STATEMENT | | 1 | 2 (0)| 00:00:01 | | 1 | FAST DUAL | | 1 | 2 (0)| 00:00:01 | -----------------------------------------------------------------
Yukarıdaki gibi sorgu çalışmadan önce “set autotrace traceonly explain” komutunu çalıştırdığımızda , artık sorgu çıktı üretmeyecek ve sadece execution plan görüntülenecektir.