Oracle
 sql >> Base de données >  >> RDS >> Oracle

comment générer un plan d'explication pour l'ensemble de la procédure stockée

Ce que vous générez est correctement appelé un "plan d'exécution". "Explain plan" est une commande utilisée pour générer et afficher un plan d'exécution, un peu comme le fait AUTOTRACE TRACEONLY dans votre exemple.

Par définition, un plan d'exécution est pour une seule instruction SQL. Un bloc PL/SQL n'a pas de plan d'exécution. S'il contient une ou plusieurs instructions SQL, chacune d'entre elles aura un plan d'exécution.

Une option consiste à extraire manuellement les instructions SQL du code PL/SQL et à utiliser le processus que vous avez déjà montré.

Une autre option consiste à activer le suivi SQL, puis à exécuter la procédure. Cela produira un fichier de trace sur le serveur qui contient les plans d'exécution pour toutes les instructions exécutées dans la session. La trace est sous une forme assez brute, il est donc généralement plus facile de la formater à l'aide de l'outil TKPROF d'Oracle; il existe également divers outils tiers qui traitent également ces fichiers de trace.