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 :

Analyse des références croisées


Sujet :

SQL Oracle

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

    Informations forums :
    Inscription : Septembre 2006
    Messages : 67
    Par défaut Analyse des références croisées
    Bonjour,

    J'interviens sur un projet existant (Oracle 10g) j'aurai à implémenter de nouvelles fonctionnalités en plsql.
    Je cherche un outil (ou une requête bien élaborée) qui permet de faire une analyse des dépendances amonts et avales

    En gros pour un objet X quelconque de la base, l'outil (ou la requête) me donnera l'ensemble des objets appelés par cet objet (de préférence avec des niveaux en cascade)
    et aussi les objets qui appellent l'objet X.

    par exemple :

    Object : PROCEDURE_01

    APPELLE :
    =>..PROCEDURE_02.........PROCEDURE.......USER01
    ....=>..PROCEDURE_03.........PROCEDURE.......USER01
    =>..FONCTION_01..........FUNCTION........USER01
    ....=>..PROCEDURE_04.........PROCEDURE.......USER01
    ....=>..TABLE_01.............TABLE...........USER01
    ....=>..TABLE_02.............TABLE...........USER01

    APPELLE PAR :
    =>..PACKAGE_02............PACKAGE.........USER01
    =>..PROCEDURE_05..........PROCEDURE.......USER01
    Merci infiniment

  2. #2
    Membre Expert Avatar de nuke_y
    Profil pro
    Indépendant en analyse de données
    Inscrit en
    Mai 2004
    Messages
    2 076
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Indépendant en analyse de données

    Informations forums :
    Inscription : Mai 2004
    Messages : 2 076
    Par défaut
    Je ne sais pas si ça couvre TOUS tes besoins (mais ça m'intéresse de savoir ceux que ça ne couvre pas) mais tu peux essayer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT ... FROM ALL_DEPENDENCIES WHERE ...
    .

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    67
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 67
    Par défaut
    Voila j'ai trouvé quelque chose comme :
    Mais c'est loin d'être efficace !!!!!
    Si vous avez mieux, je suis preneur


    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
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    select 'A',parent_owner, parent_name,
        case when parent_type = 2  then 'TABLE'
                     when parent_type = 4  then 'VIEW'
                     when parent_type = 7  then 'PROCEDURE'
                     when parent_type = 8  then 'FUNCTION'
                     when parent_type = 9  then 'PACKAGE'
                     when parent_type = 11 then 'PACKAGE BODY'
                     when parent_type = 12 then 'TRIGGER'
                     when parent_type = 13 then 'TYPE'
                     when parent_type = 24 then 'QUEUE'
                     else 'NON'
        end,
        null,null,null,order_number
    from   ora_kglr7_dependencies
    where  name = upper('$prefixe')
      and  parent_name  != upper('$prefixe')
      and  parent_owner != 'SYS'
      and  parent_name  != 'DUAL'
      and  parent_name  != 'DBMS_OUTPUT'
      and  parent_type  not in (1,3,5,6,10,14)
    UNION
    select 'B',null,null,null,owner,name,
       case when type = 2  then 'TABLE'
            when type = 4  then 'VIEW'
            when type = 7  then 'PROCEDURE'
            when type = 8  then 'FUNCTION'
            when type = 9  then 'PACKAGE'
            when type = 11 then 'PACKAGE BODY'
            when type = 12 then 'TRIGGER'
            when type = 13 then 'TYPE'
            when type = 24 then 'QUEUE'
        else 'NON'
       end,
       order_number
    from   ora_kglr7_dependencies
    where  parent_name = upper('$prefixe')
      and  name  != upper('$prefixe')
      and  owner != 'SYS'
      and  name  != 'DUAL'
      and  name  != 'DBMS_OUTPUT'
      and  type  not in (1,3,5,6,10,14);

Discussions similaires

  1. Réponses: 3
    Dernier message: 20/07/2007, 11h50
  2. effacer des références croisées
    Par jan0 dans le forum Oracle
    Réponses: 3
    Dernier message: 12/10/2006, 11h09
  3. [TComPort] Analyse des données reçues avec ReadStr
    Par chourmo dans le forum Langage
    Réponses: 4
    Dernier message: 22/06/2005, 14h12
  4. doc sur l'analyse des algorithmes
    Par pinkle dans le forum Algorithmes et structures de données
    Réponses: 2
    Dernier message: 28/05/2005, 12h59
  5. analyse des trames ?
    Par MDP dans le forum C++
    Réponses: 2
    Dernier message: 11/03/2005, 09h59

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