Overblog Suivre ce blog
Editer l'article Administration Créer mon blog
10 juillet 2011 7 10 /07 /juillet /2011 16:26

 

Voir le Plan d'Exécution SQL dans SQLPLUS avec DBMS_XPLAN.

Comment voir le Plan d’exécution SQL de mes requetes ?.

Le Package Oracle DBMS_XPLAN fournit un moyen facile d'afficher la sortie de la commande EXPLAIN PLAN FOR dans SQLPLUS.

 

Création de la table PLAN_TABLE avec UTLXPLAN.SQL

 
 SQL> connect / as sysdba Connected. SQL> SQL> @C:\oracle\product\10.2.0\db_1\RDBMS\ADMIN\utlxplan.sql Table created. SQL> CREATE OR REPLACE PUBLIC SYNONYM plan_table FOR sys.plan_table; Synonym created. SQL> SQL> GRANT ALL ON sys.plan_table TO public; Grant succeeded. SQL> 

 

Afficher le plan d’exécution d'une requête SQL.

 
 SQL> EXPLAIN PLAN FOR SELECT ename, job, dname 2 FROM EMP,DEPT 3 WHERE dept.deptno = 10 4 AND emp.deptno = dept.deptno; Explained. SQL> SQL> SELECT * FROM table(dbms_xplan.display); PLAN_TABLE_OUTPUT ---------------------------------------------------------------------------------------- Plan hash value: 568005898 ---------------------------------------------------------------------------------------- | Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time | ---------------------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 3 | 90 | 4 (0)| 00:00:01 | | 1 | NESTED LOOPS | | 3 | 90 | 4 (0)| 00:00:01 | | 2 | TABLE ACCESS BY INDEX ROWID| DEPT | 1 | 13 | 1 (0)| 00:00:01 | |* 3 | INDEX UNIQUE SCAN | PK_DEPT | 1 | | 0 (0)| 00:00:01 | |* 4 | TABLE ACCESS FULL | EMP | 3 | 51 | 3 (0)| 00:00:01 | ---------------------------------------------------------------------------------------- PLAN_TABLE_OUTPUT ---------------------------------------------------------------------------------------- Predicate Information (identified by operation id): --------------------------------------------------- 3 - access("DEPT"."DEPTNO"=10) 4 - filter("EMP"."DEPTNO"=10) 

 

Liens en rapport avec l'article et qui sont susceptibles de vous intéresser
• PL/SQL Packages

Partager cet article

Repost 0
Published by Daniel Roesch - dans PLSQL Packages
commenter cet article

commentaires