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

Oracle Discussion :

requete sql pour afficher toutes les tables non vides dans une base oracle


Sujet :

Oracle

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2011
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 32
    Points : 10
    Points
    10
    Par défaut requete sql pour afficher toutes les tables non vides dans une base oracle
    Bonjour,
    Je suis à la recherche d'une requette qui m'affiche sur une base oracle la liste des tables mais seulement les tables qui ne sont pas vides, les tables qui contiennent des donées.
    J'ai besoin de cette requette parce que je travaille sur une application qui contient des milliers des tables.
    Cordialement

  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
    Si les stats sont à jour, ce qui devrait être le cas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM all_tables WHERE num_rows>0

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2011
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 32
    Points : 10
    Points
    10
    Par défaut
    Merci pour votre reponse, mais cette requette m'affiche les tables systemes avec DATA_R2PA_D et des truc que je ne comprens pas.
    Est-ce qu'il n'ya pas un moyen d'afficher justes les tables de ma base de données.

    Cordialemen,t
    Toga222

  4. #4
    Membre expérimenté

    Homme Profil pro
    Inscrit en
    Mars 2010
    Messages
    536
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 536
    Points : 1 359
    Points
    1 359
    Par défaut
    Citation Envoyé par toga222 Voir le message
    Merci pour votre reponse, mais cette requette m'affiche les tables systemes avec DATA_R2PA_D et des truc que je ne comprens pas.
    Est-ce qu'il n'ya pas un moyen d'afficher justes les tables de ma base de données.

    Cordialemen,t
    Toga222
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT * FROM user_tables WHERE num_rows>0;
    Avec comme mentioné plus haut les statistiques à jour. Sinon voir exemple ci-dessous

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
     
    houri.world > drop table t purge;
     
    Table dropped.
     
    mhouri.world > create table t (n number);
     
    Table created.
     
    mhouri.world > select count(1) from t;
             0
     
    mhouri.world > select table_name, num_rows
      2  from user_tables
      3  where table_name = 'T'
      4  and num_rows = 0;
     
    no rows selected
     
    mhouri.world > exec dbms_stats.gather_table_stats(user, 't');
     
    PL/SQL procedure successfully completed.
     
    mhouri.world > select table_name, num_rows
      2  from user_tables
      3  where table_name = 'T'
      4  and num_rows = 0;
    T                                       0
    Bien Respectueusement
    www.hourim.wordpress.com

    "Ce qui se conçoit bien s'énonce clairement"

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2011
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 32
    Points : 10
    Points
    10
    Par défaut
    Merci encore une fois pour votre reponse.
    J'ai trouvé la solution c'est:
    SELECT * FROM ALL_tables where owner='NOM_BASE'

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

Discussions similaires

  1. Réponses: 9
    Dernier message: 24/03/2011, 11h11
  2. Réponses: 4
    Dernier message: 09/04/2009, 14h32
  3. Sélectionner toutes les cellules non vides d'une feuille
    Par Cantalou dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 28/02/2008, 17h38
  4. Réponses: 4
    Dernier message: 07/07/2006, 13h41
  5. requete sql pour bd access97 a tables multiples
    Par waspy59 dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 16/03/2006, 01h11

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