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

Bases de données Delphi Discussion :

Table de jointure relation n:n et création en SQL


Sujet :

Bases de données Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Octobre 2005
    Messages
    116
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 116
    Par défaut Table de jointure relation n:n et création en SQL
    Lorsqu'on a une table de jointure d'une raltion n:n comportant donc les 2 clés étrangère des 2 tables de la relation n:n, comment dois-je déclarer la chose en SQL?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    FOREIGN KEY (IdPhoto) REFERENCES Tphoto(Nom_fichier)
    FOREIGN KEY (IdCollection) REFERENCES TCollectgion(Nom_Collection)
    Mais dna ce cas, pas de clé primaire? Ou alors Ces champs peuvent être à la fois PRIMARY KEY (les 2 en même temps) ET FOREIGN KEY?

  2. #2
    Expert confirmé
    Avatar de Cl@udius
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2006
    Messages
    4 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 4 878
    Par défaut
    Salut
    Citation Envoyé par thibouille Voir le message
    Mais dna ce cas, pas de clé primaire? Ou alors Ces champs peuvent être à la fois PRIMARY KEY (les 2 en même temps) ET FOREIGN KEY?
    Tu définis ta clé primaire sur les 2 champs, et un foreign key pour chacun d'entre eux:
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    -- Définition de la clé primaire
    ALTER TABLE TA_TABLE_RELATION
    ADD CONSTRAINT PK_KEY PRIMARY KEY (IDPHOTO, IDCOLLECTION);
     
    -- Définition des clés étrangères
    ALTER TABLE TA_TABLE_RELATION
    ADD CONSTRAINT FK1 FOREIGN KEY (IDPHOTO) 
    REFERENCES TPHOTO (NOM_FICHIER) 
    ON UPDATE CASCADE;
     
    ALTER TABLE TA_TABLE_RELATION
    ADD CONSTRAINT FK2 FOREIGN KEY (IDCOLLECTION) 
    REFERENCES TCOLLECTION (NOM_COLLECTION) 
    ON UPDATE CASCADE;

    @+ Claudius

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    34
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Novembre 2007
    Messages : 34
    Par défaut
    Bonjour

    Je croyais que de toutes manières, une clé étrangère est obligatoirement une clé primaire de la table `étrangère`

    Lex

Discussions similaires

  1. Réponses: 1
    Dernier message: 13/07/2012, 16h29
  2. [1.x] formulaire imbriqué relation n:n table de jointure
    Par symfony30000 dans le forum Symfony
    Réponses: 15
    Dernier message: 27/04/2010, 14h12
  3. création de Table avec une relation
    Par Sim0799 dans le forum Modélisation
    Réponses: 1
    Dernier message: 06/02/2010, 13h03
  4. Réponses: 1
    Dernier message: 10/06/2009, 14h15
  5. [jointure] relation avec table réflexive
    Par matech dans le forum Hibernate
    Réponses: 9
    Dernier message: 18/04/2007, 12h12

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