Les Allergies
Alimentaires
Posez votre question Signaler

Visualiser un index sous Oracle ??? [Résolu]

Nico - Dernière réponse le 10 juil. 2004 à 12:32
Bonjour à tous,
J'arrive sur un bdd Oracle que je n'ai pas créé, je vois qu'il y a des index de créés sur certaines tables, mais je ne sais pas comment voir sur quel champs il ont été créé.
QUelqu'un pourait il m'aider ?
Merci d'avance.
Nico.
Lire la suite 

Visualiser un index sous Oracle »

8 réponses
Réponse
+5
moins plus
Salut,

Tu peux faire un select dans les views USER_INDEXES et USER_IND_COLUMNS qui te donnent respectivement pour chaque table la liste des indexes et pour chaque index la liste des colonnes et leur ordre.

michael.

Ne vous souciez pas de n'être pas remarqué ; cherchez 
plutôt à faire quelque chose de remarquable [Confucius]
Ajouter un commentaire
Réponse
+1
moins plus
la réponse ci-dessus est en effet correcte.
Une autre solution pour ceux qui aiment les interfaces plus "simples", je vous conseille d'utiliser un logiciel comme toad
Ajouter un commentaire
Réponse
+0
moins plus
Trop fort grofwa !!!
Merci beaucoup.
Ajouter un commentaire
Réponse
+0
moins plus
Hé, un connaisseur !

Mmmm, Toad !

;-)

Ne vous souciez pas de n'être pas remarqué ; cherchez 
plutôt à faire quelque chose de remarquable [Confucius]
Ajouter un commentaire
Réponse
+0
moins plus
Autre petite question.
J'ai 2 tables exactement similaires (même structure, même index, même nb d'enregistrement...), j'ai bien mes index de créés (enfin je les vois dans les vues mentionnées ci-dessus), mais malgré cela, sur une table les requetes rames et sur l'autres pas de problème... D'ou pourrait venir le problème ?
Faut il regénéré les index (même si on les voit) ? Y'a t-il autre chose à vérifier ?
Encore merci.
Ajouter un commentaire
Réponse
+0
moins plus
Deux tables identiques dans deux bases différentes donc ?
Alors regarde dans init.ora le paramètre optimizer_mode qui peut être à RULE ou à CHOOSE et qui détermine la manière dont s'exécutent les requêtes. Tu peux changer cela au niveau de la session (alter session...)
Si tu es en mode CHOOSE, il faut activer les statistiques sur les indexes et les tables.

Michael

Ne vous souciez pas de n'être pas remarqué ; cherchez 
plutôt à faire quelque chose de remarquable [Confucius]
Ajouter un commentaire
Réponse
+0
moins plus
Ok, je vais regarder ça.
Mais sinon, pour ma culture perso:
Si je fais un select avec une condition WHERE A='test'
Est ce qu'un index créé sur le champ A, B, et C est aussi efficace que s'il avait été créé que sur le champ A ?
Ajouter un commentaire
Réponse
+0
moins plus
Oracle utilise l'index dans l'ordre des colonnes, c'est à dire que si tu as un index sur les colonnes a, b et C dans cet ordre là, une "where condition" qui porte uniquement sur la col A ou sur les colonnes A et B utilisera l'index. Par contre, une query qui porte uniquement sur la colonne B ou sur les colonnes B et C n'utilisera pas l'index.

Michael.

Ne vous souciez pas de n'être pas remarqué ; cherchez 
plutôt à faire quelque chose de remarquable [Confucius]
Ajouter un commentaire
Ce document intitulé « Visualiser un index sous Oracle ??? » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?