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

MS SQL Server Discussion :

ForeignKeys


Sujet :

MS SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Avril 2004
    Messages
    85
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 85
    Par défaut [Résolu] ForeignKeys
    Je cherche une facon de savoir quel son les liens sur une table. Je cherche partout mais je ne trouve rien.

    je voudrai savoir pour exemplus une table bidon si elle a d autre table de lier a elle sans regarder les diagramme.

    Si vous savez comment je serai grandement soulagé

  2. #2
    Membre chevronné
    Inscrit en
    Août 2002
    Messages
    354
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 354
    Par défaut
    Slt,

    Tu peux utiliser sp_help pour connaitre ces infos, ou les vues INFORMATION_SCHEMA ou directement les tables systemes (sysobjects,sysdepends ...).

    a+

  3. #3
    Rédacteur
    Avatar de WOLO Laurent
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Mars 2003
    Messages
    2 741
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Congo-Brazzaville

    Informations professionnelles :
    Activité : Architecte de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 2 741
    Par défaut
    Il suffit de faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    SELECT TC.CONSTRAINT_NAME, KCU.COLUMN_NAME 
    FROM   INFORMATION_SCHEMA.TABLE_CONSTRAINTS TC 
           JOIN INFORMATION_SCHEMA.KEY_COLUMN_USAGE KCU 
                ON TC.TABLE_NAME = KCU.TABLE_NAME 
                   AND TC.CONSTRAINT_NAME = KCU.CONSTRAINT_NAME 
    WHERE TC.CONSTRAINT_TYPE = 'FOREIGN KEY' 
      AND TC.TABLE_NAME = 'Bidon'
    Et vous trouverez votre bonheur.
    Merci.

    Découvrez la FAQ de MS SQL Server.
    La chance accorde ses faveurs aux esprits avertis !

  4. #4
    Membre confirmé
    Inscrit en
    Avril 2004
    Messages
    85
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 85
    Par défaut Merci
    C'est exactement cela que je voulais faire !

    Citation Envoyé par WOLO Laurent
    Il suffit de faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    SELECT TC.CONSTRAINT_NAME, KCU.COLUMN_NAME 
    FROM   INFORMATION_SCHEMA.TABLE_CONSTRAINTS TC 
           JOIN INFORMATION_SCHEMA.KEY_COLUMN_USAGE KCU 
                ON TC.TABLE_NAME = KCU.TABLE_NAME 
                   AND TC.CONSTRAINT_NAME = KCU.CONSTRAINT_NAME 
    WHERE TC.CONSTRAINT_TYPE = 'FOREIGN KEY' 
      AND TC.TABLE_NAME = 'Bidon'
    Et vous trouverez votre bonheur.
    Merci.

  5. #5
    Rédacteur
    Avatar de WOLO Laurent
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Mars 2003
    Messages
    2 741
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Congo-Brazzaville

    Informations professionnelles :
    Activité : Architecte de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 2 741
    Par défaut
    Et en voici une deusième méthode :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    SELECT o1.name AS NOM_OBJET, o2.name AS TABLE_ASSOCIEE,o1.xtype 
    FROM   sysobjects o1 
           JOIN  sysobjects o2 
                 ON o1.parent_obj = o2.id 
    WHERE  o1.xtype = 'F' 
    AND    o1.status >= 0 
    AND    o1.category = 0
    et oui, il ni ya pas que les vues d'informations sur le schema qui conviennent !!!
    Et ca, je crois que tu n(y pensais pas.

    Découvrez la FAQ de MS SQL Server.
    La chance accorde ses faveurs aux esprits avertis !

  6. #6
    Membre chevronné
    Inscrit en
    Août 2002
    Messages
    354
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 354
    Par défaut
    Slt,

    Pourquoi se compliquer la vie quand il existe une procedure pour faire cela ... :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    exec sp_helpconstraint 'Table'
    a+

  7. #7
    Rédacteur
    Avatar de WOLO Laurent
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Mars 2003
    Messages
    2 741
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Congo-Brazzaville

    Informations professionnelles :
    Activité : Architecte de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 2 741
    Par défaut
    Gandalf, ce n'est pas ce compliquer la vie
    Mais il y'a certainement plusieurs raisons associée:

    La procedure stockée te retourne des resultats mais :
    1-Vous avez plusieurs tables resultats aulieu d'une seule qui est uniforme
    Voici pour s'en convaincre

    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
    Object Name                                                                                                                                                                                                                                                      
    ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 
    T_BON_LIV
     
     
    constraint_type                                                                                                                                    constraint_name                                                                                                                  delete_action update_action status_enabled status_for_replication constraint_keys                                                                                                                                                                                                                                                  
    -------------------------------------------------------------------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------------------------------------------------- ------------- ------------- -------------- ---------------------- ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 
    DEFAULT on column BLV_ACTIVE_DATE                                                                                                                  DF__T_BON_LIV__BLV_A__062DE679                                                                                                   (n/a)         (n/a)         (n/a)          (n/a)                  (getdate())
    FOREIGN KEY                                                                                                                                        FK_BLV_FRN                                                                                                                       No Action     No Action     Enabled        Is_For_Replication     FRN_ID
                                                                                                                                                                                                                                                                                                                                                          REFERENCES GSIM.dbo.FOURNISSEUR (FRN_ID)
    FOREIGN KEY                                                                                                                                        FK_BLV_OPE                                                                                                                       No Action     No Action     Enabled        Is_For_Replication     OPE_ID_ACTIVE
                                                                                                                                                                                                                                                                                                                                                          REFERENCES GSIM.dbo.OPERATEUR (OPE_ID)
    PRIMARY KEY (clustered)                                                                                                                            PK__T_BON_LIV__0539C240                                                                                                          (n/a)         (n/a)         (n/a)          (n/a)                  BLV_ID
     
     
    Table is referenced by foreign key                                                                                                                                                                                                                               
    ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 
    GSIM.dbo.TJ_DETAIL_BLV: FK_TJ_DETAIL_BLV_T_BON_LIV
    2-Avoir la maîtrise de la structure de la base des données.

    Et bien d'autres.

    Merci.

    Découvrez la FAQ de MS SQL Server.
    La chance accorde ses faveurs aux esprits avertis !

  8. #8
    Membre chevronné
    Inscrit en
    Août 2002
    Messages
    354
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 354
    Par défaut
    Slt,

    j'entends bien, il y a plusieurs solutions , tout depends du besoin, comme la je pressentais (peut etre a tord) que le besoin etait ponctuel alors j'ai propose la solution la plus simple !

    a+

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

Discussions similaires

  1. PrimaryKey, ForeignKey composites et collections
    Par delirii dans le forum JPA
    Réponses: 1
    Dernier message: 16/06/2009, 18h22
  2. [EF] ForeignKey dans un gridView avec EntityDataSource
    Par EMC51 dans le forum Accès aux données
    Réponses: 1
    Dernier message: 13/03/2009, 17h46
  3. EntityFramework et foreignKey dans un gridView
    Par EMC51 dans le forum ASP.NET
    Réponses: 0
    Dernier message: 09/03/2009, 11h41
  4. Supprimer une foreignKey ?
    Par Sylver--- dans le forum Requêtes
    Réponses: 2
    Dernier message: 03/10/2008, 11h01
  5. Ojb et les foreignkey
    Par koukoya dans le forum JDBC
    Réponses: 12
    Dernier message: 20/09/2006, 15h47

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