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

PL/SQL Oracle Discussion :

Comparaison des colonnes de deux tables différentes [Débutant(e)]


Sujet :

PL/SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de Chakalaka
    Inscrit en
    Octobre 2007
    Messages
    152
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 152
    Par défaut Comparaison des colonnes de deux tables différentes
    Bonjour,

    Je voudrais savoir si Oracle fournit un moyen de comparer la structures de deux tables. Je veux juste voir si les 2 tables ont les mêmes colonnes le contenu m’intéresse pas du tout (je ne veux pas comparer les données)

    Sinon y a-t-il une fonction pour faire ce genre de comparaison ? Mes connaissances en programmation Oracle sont limitées

    Merci pour votre aide

    PS: J'utilise PL/SQL developper 7.0

  2. #2
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    2 954
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 2 954
    Par défaut
    Regarde all_tab_colums

    C'est quoi 2 tables qui ont les mêmes colonnes ?
    C'est même nom de colonne + même data_type ? Ou juste même nom ou juste même data_type ?

  3. #3
    Membre confirmé Avatar de Chakalaka
    Inscrit en
    Octobre 2007
    Messages
    152
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 152
    Par défaut
    Citation Envoyé par skuatamad Voir le message
    Regarde all_tab_colums

    C'est quoi 2 tables qui ont les mêmes colonnes ?
    C'est même nom de colonne + même data_type ? Ou juste même nom ou juste même data_type ?

    En effet, j'ai 2 tables :
    Table A
    Table B qui est l'archive de la table A

    Donc les 2 ont un nom différent mais devraient avoir les mêmes colonnes

  4. #4
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    2 954
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 2 954
    Par défaut
    Par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    select column_name, data_type, data_length
      from all_tab_columns
     where table_name = 'TABLEA'
     minus
    select column_name, data_type, data_length
      from all_tab_columns
     where table_name = 'TABLEB'
    Après il suffit de récupérer les colonnes nécessaires, comme NULLABLE, de all_tab_columns en fonction du besoin.

  5. #5
    Membre Expert
    Avatar de doc malkovich
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Juillet 2008
    Messages
    1 884
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 884
    Billets dans le blog
    1
    Par défaut
    TOAD a une fonction de compare schema très pratique ...
    Mais à ma connaissance PL/SQL developper non

  6. #6
    Membre confirmé Avatar de Chakalaka
    Inscrit en
    Octobre 2007
    Messages
    152
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 152
    Par défaut
    Citation Envoyé par skuatamad Voir le message
    Par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    select column_name, data_type, data_length
      from all_tab_columns
     where table_name = 'TABLEA'
     minus
    select column_name, data_type, data_length
      from all_tab_columns
     where table_name = 'TABLEB'
    Après il suffit de récupérer les colonnes nécessaires, comme NULLABLE, de all_tab_columns en fonction du besoin.
    Merci pour le script
    J'essaye de rouler ça et j'ai le résulat suivant

    Pourquoi c'est vide de même ? je dois changer un settings quelque part ?

  7. #7
    Invité
    Invité(e)
    Par défaut
    soit les tables sont identiques, soit la table A n'existe pas...

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

Discussions similaires

  1. retourner des colonnes de deux tables
    Par 300hero dans le forum Requêtes
    Réponses: 5
    Dernier message: 28/10/2010, 14h03
  2. Réponses: 2
    Dernier message: 30/04/2009, 12h46
  3. Réponses: 2
    Dernier message: 10/04/2009, 14h34
  4. Comparaison entre deux champs de deux tables différentes
    Par liam81150 dans le forum Requêtes
    Réponses: 1
    Dernier message: 26/09/2005, 20h53
  5. Réponses: 3
    Dernier message: 11/07/2005, 15h20

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