sábado, 13 de marzo de 2010

Explain plan

Compartir

Oracle dispone de una herramienta (Explain plan) que permite al administrador de la base de datos comprobar como se ejecutará una determinada consulta, es decir, podemos saber, por ejemplo, si se accederá al índice de una determinada tabla o por el contrario se recorrerá la tabla entera. 
Esta es la sintaxis general: EXPLAIN PLAN [SET STATEMENT_ID = ‘text’] FOR sentencia; Ejemplo:
DELETE PLAN_TABLE;
EXPLAIN PLAN FOR SELECT * FROM T_PEDIDOS WHERE CODPEDIDO = 5;
Para ver el resultado:
SELECT 
SUBSTR(LPAD’ ‘, LEVEL-1) || OPERATION || ‘ (’ || OPTIONS || ‘)’,1,30 ) "OPERACION", 
OBJECT_NAME "OBJETO"
FROM PLAN_TABLE 
START WITH ID = 0 
CONNECT BY PRIOR ID=PARENT_ID;

Sobre todo hay que evitar búsquedas del tipo FULL TABLE SCAN

0 comentarios:

Publicar un comentario en la entrada

Gracias por escribir un comentario