web-dev-qa-db-fra.com

Plan d'exécution Oracle

J'utilise Oracle 11g et Toad for Oracle. Comment afficher le plan d'exécution des requêtes? Dans Sql Server Management Studio, le plan d’exécution peut être affiché au format graphique. Existe-t-il une fonctionnalité/un outil comme celui-ci sur Toad for Oracle?

12
Umut Derbentoğlu

CTRL-E

Assurez-vous d'avoir terminé la requête avec un point-virgule (et la requête ci-dessus)

Modifier:

Vous devez configurer le tableau de planification TOAD pour pouvoir l'utiliser. Si vous pensez qu'il est déjà configuré sur votre base de données, vous aurez peut-être simplement besoin d'un accès. Sinon, dans ma version légèrement plus ancienne de TOAD, il se trouve sous:

Base de données -> Administrer -> Assistant Objets côté serveur. À partir de là, vous pouvez créer la ou les tables de plan dans un schéma que vous avez choisi.

20
cagcowboy

Vérifiez que toutes les requêtes se terminent par un point-virgule, placez le curseur sur la requête que vous souhaitez analyser et appuyez sur CTRL-E .

La première fois que vous pouvez obtenir une fenêtre contextuelle demandant le nom de la table de planification, elle suggère TOAD_PLAN_TABLE, mais il est préférable d’utiliser la table Oracle standard PLAN_TABLE qui devrait déjà être disponible. Donc, entrez PLAN_TABLE à la place de TOAD_PLAN_TABLE (ne spécifiez pas de schéma) et cliquez sur OK. Vous devriez recevoir un message disant que l'objet existe déjà: cliquez à nouveau sur OK pour le reconnaître. Maintenant, essayez à nouveau CTRL-E et vous obtiendrez le plan d'expliquer.

Pour afficher/modifier le nom de la table de planification actuellement configurée, accédez au menu "Afficher/Options de crapaud/Oracle général".

1
Pino

Vous devez créer PLAN_TABLE à l'aide d'un script fourni par Oracle Nommé UTLXPLAN.SQL et situé dans l'un des dossiers d'installation Du serveur de base de données. 

Ensuite, vous devez utiliser l'instruction EXPLAIN PLAN pour générer un plan pour une instruction SQL, comme suit: 

Ensuite, vous pouvez utiliser une sélection parmi PLAN_TABLE (généralement à l'aide d'une requête hiérarchique) ou la procédure DBMS_XPLAN.DISPLAY_PLAN pour afficher le plan. Dans le même dossier que le fichier UTLXPLAN.SQL, il existe généralement des exemples D'utilisation de cette procédure. 

De plus, dans SQL * PLUS, vous pouvez utiliser la fonction SET AUTOTRACE. 

1
Evan

Pour TOAD FOR Oracle

cela m'a aidé Comment visualiser le plan Explain dans Oracle Sql? , Je viens d'écrire ce qu'ils ont fait dans SQL Developer et écrit dans l'éditeur de crapaud, puis exécuter.

Example

explain plan for select field1, field2 from TABLE_NAME;
SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY);
0
Jorge T