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 :

Requète sur le dictionnaire de donnée Oracle


Sujet :

SQL Oracle

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 77
    Par défaut Requète sur le dictionnaire de donnée Oracle
    Bonjour,
    Pour mes futurs examen je m'entraine aux requètes Sql sur le dictionnaire de données oracle, mais j'en ai deux qui me pose problème :

    - afficher pour chaque table la taille totale de ses indexes :

    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    SELECT Segment_name, SUM(Byte)
    FROM DBA_SEGMENT
    WHERE Segment_type = 'INDEX'
    GROUP BY Segment_name;
    bon mon soucis ici c'est que je ne suis pas sur de récupérer le nom de ma table (disons que je ne suis pas sur que Segment_name = table_name)

    -afficher le nombre de table qui ont plus de 5 index
    pour celle-ci j'ai aucune idée

    - encore une autre question pour combler mes lacunes personnelles, quelqu'un aurait l'amabilité de me définir ce qu'est concètement un tablespace ?

  2. #2
    Membre très actif Avatar de hazamor
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2008
    Messages
    179
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2008
    Messages : 179
    Par défaut Having SOMME>5
    -afficher le nombre de table qui ont plus de 5 index
    pour celle-ci j'ai aucune idée
    Essayer avec ça:

    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    SELECT Segment_name, SUM(Byte) SOMME
    FROM DBA_SEGMENT
    WHERE Segment_type = 'INDEX'
    GROUP BY Segment_name;
    Having SOMME>5

  3. #3
    Membre Expert Avatar de fatsora
    Profil pro
    Inscrit en
    Février 2006
    Messages
    1 103
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 1 103
    Par défaut
    Bonsoir,

    Citation Envoyé par oldscrout Voir le message
    Bonjour,
    Pour mes futurs examen je m'entraine aux requètes Sql sur le dictionnaire de données oracle, mais j'en ai deux qui me pose problème :

    - afficher pour chaque table la taille totale de ses indexes :

    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    SELECT Segment_name, SUM(Byte)
    FROM DBA_SEGMENT
    WHERE Segment_type = 'INDEX'
    GROUP BY Segment_name;
    bon mon soucis ici c'est que je ne suis pas sur de récupérer le nom de ma table (disons que je ne suis pas sur que Segment_name = table_name)
    avec cette requette tu ne vas avoir que le nom de l'index (segmen_name)!

    essaie une jointure avec dba_indexes


    Citation Envoyé par oldscrout
    -afficher le nombre de table qui ont plus de 5 index
    pour celle-ci j'ai aucune idée

    Meme remarque que au dessus ,tu ajoutes
    having

    Citation Envoyé par oldscrout
    - encore une autre question pour combler mes lacunes personnelles, quelqu'un aurait l'amabilité de me définir ce qu'est concètement un tablespace ?
    cf

    http://oracle.developpez.com/guide/a...e/tablespaces/

  4. #4
    Membre expérimenté
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 207
    Par défaut
    Bonjour,

    Oracle a eu cette gentillesse:
    http://www.oracle.com/pls/db111/sear...ord=tablespace

    La doc Oracle est une mine d'information; Certains répondront qu'elle est en anglais. Et bien si tu veux etre DBA, autant commencer de suite.
    La doc est en anglais, Metalink est en anglais, ...

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 77
    Par défaut
    Citation Envoyé par hazamor Voir le message
    Essayer avec ça:

    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    SELECT Segment_name, SUM(Byte) SOMME
    FROM DBA_SEGMENT
    WHERE Segment_type = 'INDEX'
    GROUP BY Segment_name;
    Having SOMME>5
    seulement ce code la va me renvoyer les index qui font plus de 5 octets !!!
    il ne reponds à aucune de mes requêtes suivantes (a moins que je sois passé au travers) :

    - pour chaque table la taille totale de ses indexes
    - les tables qui ont plus de 5 indexes ...

    Pour la jointure sur dba_indexes je vois pas vraiment ...
    serais t'il possible d'avoir une réponse exacte, merci bcp

  6. #6
    Membre chevronné
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    290
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 290
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select table_name from dba_indexes group by table_name having count(*) >= 5;
    te donne les tables possédant plus de 5 index.

    Puis jointure sur les index de cet ensemble de tables pour trouver leur taille.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 5
    Dernier message: 16/11/2007, 17h54
  2. Requête sur un type de donnée
    Par Coocky10 dans le forum Langage SQL
    Réponses: 4
    Dernier message: 13/11/2007, 16h32
  3. [Lazarus] Problème de requête sur une base de données
    Par bubulemaster dans le forum Lazarus
    Réponses: 1
    Dernier message: 09/11/2007, 18h14
  4. [PDO] Requêtes sur plusieurs bases de données
    Par nabab dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 23/08/2007, 08h11
  5. Requête sur plusieurs bases de données
    Par Oluha dans le forum ASP
    Réponses: 8
    Dernier message: 14/10/2005, 14h57

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