Pada database oracle,
informasi ini dapat dilihat dengan menggunakan perintah explain plan, yang akan
memberi informasi tentang rencana eksekusi suatu query. Informasi ini disimpan
dalam tabel PLAN_TABLE yang terdapat pada schema user yang
mengeksekusi perintah tersebut.
Cara melakukannya
yaitu sebagai berikut :
1.
Sebelum melakukan perintah explain plan,
terlebih dahulu Buat table PLAN_TABLE dengan
menggunakan script utlxplan.sql
yang diambil dari
\%ORACLE_HOME%\RDBMS\ADMIN.
2. Setelah itu table PLAN_TABLE dapat digunakan
seperti contoh berikut :
SQL> explain plan
Set statement_id=’test1’
Into plan_table for
Select * from karyawan where
gaji=2000000;
Dalam PLAN_TABLE rencana eksekusi diatas
dikenal dengan nama test1 yang
terdefinisi pada kolom statement_id.
3. Untuk
melihat jalur akses
yang akan digunakan
database saat melakukan query
yaitu : Save.
Untuk melihat rencana
dari test 1, digunakan perintah SELECT sebagai berikut:
SELECT LPAD(’
’,2*Level)||Operation||’ ’||Options||’ ’||Object_Name Q_Plan
FROM plan_table
WHERE statement_id=’test1’
CONNECT BY PRIOR id=parent_id AND
statement_id=’test1’
START WITH id=0 AND
statement_id=’test1’;
Contoh lain dari hasil eksekusi query tersebut
:
Q_PLAN
......................................................................................................................................
SELECT STATEMENT
TABLE
ACCESS FULL KARYAWAN
Output tersebut
dibaca mulai dari
yang indent-nya paling
dalam yaitu :
TABLE ACCESS FULL KARYAWAN. Dikarenakan klausa WHERE melibatkan kolom
gaji namun kolom gaji tidak ada index-nya, maka Oracle melakukan full table
scan. Setelah seluruh tabel karyawan
selesai dibaca, selanjutnya adalah SELECT STATEMENT yang berfungsi untuk
menampilkan hasil query.
Tidak ada komentar:
Posting Komentar