Hi everybody,

J'ai fait des tests dernièrement sur EXPLAIN PLAN et AUTOTRACE. Je voulais vérifier qu'AUTOTRACE, même s'il exécute la requête, utilise bien EXPLAIN PLAN pour afficher le plan d'exécution, conformément à ce que disait Tom Kyte. En testant les bind variables, je suis arrivé à cette même conclusion MAIS ce qui m'a surpris, c'est que le plan d'exécution, pour EXPLAIN PLAN, est stocké dans la vue PLAN_TABLE alors que pour AUTOTRACE il est stocké dans V$SQL...

Est-ce que cela vous semble logique de mettre ce plan à deux endroits différents pour la même commande? Est-ce aprce que avec AUTOTRACE la requête est exécutée (sauf si AUTOTRACE TRACEONLY EXPLAIN) alors qu'avec EXPLAIN PLAN elle ne l'est pas?