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

Administration Oracle Discussion :

nombre de lignes d'une liste de tables


Sujet :

Administration Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Avril 2007
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 12
    Par défaut nombre de lignes d'une liste de tables
    Bonjour
    Dans ma base Oracle j'ai une table contenant une liste de table
    Je souhaiterai pouvoir connaitre le nombre de lignes que contiennent chacune de ces tables.
    Je pensais notamment créer un curseur dans lequel je recupere le nom des tables puis ensuite faire un EXECUTE pour connaitre le nombre de ligne de la table contenu dans le curseur, mais je sais pas du tout comment on fait.
    la table contenant la liste des table s'appelle REF_TABLE et contient la colonne TABLE_NAME qui contient le nom des tables.
    Je veux mettre le resultat dans une autre table nommé GRS_TABLE contient la colonne TABLE_NAME pour le nom de la table et NB_LIGNE pour le nombre de ligne.
    je pensais faire un truc du style(je sais que c'est completement faux mais c'est pour donner une idée) :

    DECLARE
    NB_LIGNE INTEGER;

    BEGIN
    for MTABLE in
    (select NOM_TABLE
    From REF_TABLE)
    LOOP
    NB_LIGNE = EXECUTE ("select count(*) from " || MTABLE.NOM_TABLE );
    EXECUTE("INSERT INTO GRS_TABLE VALUES(" || MTABLE.NOM_TABLE || "," || NB_LIGNE ||")") ;
    END LOOP;
    END;

    Merci de votre aide

  2. #2
    McM
    McM est déconnecté
    Expert confirmé

    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Juillet 2003
    Messages
    4 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Juillet 2003
    Messages : 4 580
    Billets dans le blog
    4

  3. #3
    Membre averti
    Inscrit en
    Avril 2007
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 12
    Par défaut
    Merci mais y aurait-il moyen d'avoir le code car je debute en SQL et la je vois toujours pas comment faire.

  4. #4
    Membre Expert

    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Janvier 2004
    Messages
    2 862
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2004
    Messages : 2 862
    Par défaut
    Je pense qu'en faisant un petit effort de lecture et de compréhension du tutoriel tu devrais t'en sortir. Si ce n'est pas le cas, postes-nous ce que tu as fait et ce qui te pose problème.

    Cela te sera beaucoup plus profitable et tu retiendras beaucoup mieux que si l'on te donne une solution toute faite.

  5. #5
    McM
    McM est déconnecté
    Expert confirmé

    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Juillet 2003
    Messages
    4 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Juillet 2003
    Messages : 4 580
    Billets dans le blog
    4
    Par défaut
    Citation Envoyé par plaineR
    Cela te sera beaucoup plus profitable et tu retiendras beaucoup mieux que si l'on te donne une solution toute faite.
    Exact

  6. #6
    Membre averti
    Inscrit en
    Avril 2007
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 12
    Par défaut
    alors voila ou j'en suis :

    pour la creation de la fonction :

    CREATE or REPLACE FUNCTION Compte_rec (PC$Table IN VARCHAR2)
    RETURN PLS_INTEGER
    IS
    LC$Requete VARCHAR2(512) ;
    LN$Total PLS_INTEGER ;
    BEGIN
    LC$Requete := ‘Select count(*) From ‘ || PC$Table ;
    EXECUTE IMMEDIATE LC$Requete INTO LN$Total ;
    return LN$Total ;
    END ;


    Pour l'insertion proprement dite

    DECLARE
    LN$Nombre INTEGER;
    LC$Requete2 VARCHAR2(512) ;
    BEGIN
    for MTABLE in
    (select DESTINATION
    From GRS_AUTOSYS_REF_TABLE)
    LOOP
    LN$Nombre := Compte_rec(MTABLE.DESTINATION) ;
    LC$Requete2 := ‘INSERT INTO GRS_AUTOSYS_TABLE VALUES(‘ || MTABLE.DESTINATION || ‘,‘ || LN$Nombre ‘)‘ ;
    EXECUTE IMMEDIATE LC$Requete2
    END LOOP;
    END;

    moi ca ne marche toujours pas. Apparement il y a une erreur deja sur la compilation de la fonction. J'utilise TOAD comme interface pour oracle 9.2

  7. #7
    McM
    McM est déconnecté
    Expert confirmé

    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Juillet 2003
    Messages
    4 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Juillet 2003
    Messages : 4 580
    Billets dans le blog
    4
    Par défaut
    Tu peux utiliser la balise CODE pour ton code stp ? (c'est le #)

    C'est normal que tu mettes des ` et pas des ' pour tes chaines de caractère ?

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

Discussions similaires

  1. [XL-2007] Nombre de lignes dans une liste déroulante
    Par divan dans le forum Conception
    Réponses: 3
    Dernier message: 20/11/2010, 10h32
  2. Réponses: 7
    Dernier message: 28/02/2006, 16h46
  3. nombre de lignes d'une table de ma BD
    Par manikou dans le forum MFC
    Réponses: 4
    Dernier message: 06/07/2005, 10h04
  4. Réponses: 8
    Dernier message: 20/06/2005, 15h10
  5. determination le nombre de ligne d'une table
    Par picoti2 dans le forum Bases de données
    Réponses: 2
    Dernier message: 18/03/2004, 09h25

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