2010-12-07 4 views
4

Si je reconstruis un index inutilisable à l'aide de alter index x rebuild, le plan d'exécution de tout SQL ayant utilisé cet index sera-t-il réévalué?Oracle alter index/rebuild

Je sais que les statistiques sont recalculées dans le cadre de la reconstruction dans la version DB que j'utilise - Oracle 10.2.0.4.0.

Je ne veux pas utiliser le paquet dbms_stats pour forcer le problème, vu que j'ai déjà de nouvelles statistiques!

Répondre

6

étant donné que l'index est actuellement inutilisable, aucune requête SQL n'utilise l'index. Lorsque vous collectez des statistiques (via une reconstruction ou le package dbms_stats), toutes les instructions sur la table de base sont réparées (hard-parse) la prochaine fois qu'elles sont soumises. Les plans peuvent changer en raison de la mise à jour des statistiques.

La reconstruction d'un index inutilisable le rendra donc visible et utilisable par toutes les instructions, même celles qui ont déjà été analysées.

+0

Salut Vincent, c'est ce que j'avais soupçonné et que je voulais entendre de quelqu'un d'autre! Merci pour ça! –