IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SQL Oracle Discussion :

Oracle 10g proposition d'index


Sujet :

SQL Oracle

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2006
    Messages : 69
    Points : 43
    Points
    43
    Par défaut Oracle 10g proposition d'index
    Bonjour,

    En exécutant Tunning advisor, oracle me propose de créer un index sur une colonne afin d'optimiser son exécution. Le problème est que cet élément fait partie de la clef primaire.

    Cet clef est constitué de trois colones et est le premier élément de la clef (Type_Texte, Type_Id, Code_Langue). Dans la clause "where" de mon select, il n'y a que Type_id qui n'apprait pas dans les conditions.

    Et si mes connaissances sont correctes, une clef primaire à toujours un index?

    Alors pourqoi me propose-t-il de construre un index sur Type_Texte?

    Merci d'avance.

  2. #2
    Expert éminent sénior
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 073
    Points
    19 073
    Par défaut
    Conclusion : un advisor ne reste qu'un conseil, il n'est pas toujours bon de le suivre

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2006
    Messages : 69
    Points : 43
    Points
    43
    Par défaut
    Merci pour la réponse orafrance.

    Par contre, en relisant mon poste, j'ai omis d'indiquer que le plan d'exécution ne faisait pas appel à l'index de la clef primaire.

    Est-ce que cela a une influence?

    Je n'ai pas encore fait l'essai et si je crée l'index proposé et quand réexaminant le plan d'exécution, il utilise l'index qu'est-ce que je devrais en déduire?

    Bonne soirée!

  4. #4
    Expert éminent sénior
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 073
    Points
    19 073
    Par défaut
    ça c'est pas normal par contre, les stats sont bien calculées ?

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    354
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 354
    Points : 436
    Points
    436
    Par défaut
    En plus que les stats, comment apparait la colonne dans la clause WHERE?

    Quel est le type de la colonne type_text?
    Consultant et formateur Oracle

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2006
    Messages : 69
    Points : 43
    Points
    43
    Par défaut
    => orafrance
    Oui les stats sont calculés. C'est le job automatique d'Oracle qui s'en occuppe (GATHER_STATS_JOB). Dernière exécution à 22h hier soir avec succès.

    => Michel SALAIS
    Le type est varchar2
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ... where ... type_texte = ma_variable and ...

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    354
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 354
    Points : 436
    Points
    436
    Par défaut
    Donc, si je comprends bien la comparaison utilise une variable.

    Quelles sont les valeurs des paramètres NLS_SORT et NLS_COMP?
    Consultant et formateur Oracle

  8. #8
    Membre expert

    Profil pro
    Inscrit en
    Février 2006
    Messages
    3 437
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 3 437
    Points : 3 597
    Points
    3 597
    Par défaut
    Est-ce que vous avez un vrai problème de performance sur la requête en question ?

    Si oui, ce serait beaucoup plus simple pour vous aider si vous pouviez donner au minimum:
    1. le code complet de la requête
    2. le plan d'exécution donné par EXPLAIN PLAN
    3. les ordres SQL pour créer la table et les contraintes
    4. le nombre de lignes dans la/les table(s) et le nombre de lignes retournées par la requête.

Discussions similaires

  1. [Oracle 10G]Rebuild index
    Par seal dans le forum Administration
    Réponses: 1
    Dernier message: 04/05/2007, 21h19
  2. probleme index bitmap de jointure, oracle 10g
    Par nagty dans le forum Oracle
    Réponses: 2
    Dernier message: 19/04/2006, 20h14
  3. Installation Oracle 10g sous Windows 2000
    Par Jeff206 dans le forum Oracle
    Réponses: 6
    Dernier message: 24/08/2004, 15h51
  4. [ORACLE 10g Linux] Pbm de connexion avec un Client winXP
    Par zarbiwayne dans le forum Administration
    Réponses: 26
    Dernier message: 20/08/2004, 22h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo