|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : mars 2011 Messages : 3 ![]() |
Bonjour à tous.
Je me pose une question et j'aimerais avoir quelques éclaircissements. j'ai beau cherché sur le net mais en vain. Donc voici ma question: est-il possible d'avoir une clé étrangère pour deux clés primaires différentes? Si oui, comment gérer avec MySql lors que la création de la fameuse clé étrangère? Merci d'avance!! |
|
|
00
|
|
|
#2 |
![]() ![]() ![]() Cédric DuprezInscription : avril 2002 Messages : 3 823 ![]() |
Bonjour,
Qu'entendez-vous par "une clé étrangère pour 2 clés primaires" ? S'agit-il d'une clé concaténée ? On peut avoir un bout de schéma pour tenter de mieux cerner la question ?
__________________
Rédacteur / Modérateur SGBD Mes tutoriels et la FAQ MySQL ---------------------------------------------------- Pensez aux balises code et au tag Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça
|
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : mars 2011 Messages : 3 ![]() |
Bonjour ced,
Je vous donne comme exemple ma bdd: Table Circuit id_circuit nom_circuit Table Vehicule id_vehicule type_vehicule nom_vehicule Table Indisponibilite id_indisponibilite date_debut date_fin element_id Dans ma petite tête, element_id représente une clé étrangère qui était reliée à id_véhicule et id_circuit à la fois. Sauf qu'à la définition des relations via phpmyadmin, je me rends compte que je ne peux rattacher element_id qu'à une seule clé primaire(soit id_vehicule, soit id_circuit). D'où ma question. |
|
|
00
|
|
|
#4 |
![]() ![]() ![]() Cédric DuprezInscription : avril 2002 Messages : 3 823 ![]() |
Ah oui, effectivement, c'est une erreur de conception que de vouloir rattacher un champ à 2 clés à la fois.
Il faut 2 clés étrangères et donc 2 champs. La table "indisponibilité" est une table de passage entre "Circuit" et "Vehicule" et doit donc disposer des 2 clés étrangères. ced
__________________
Rédacteur / Modérateur SGBD Mes tutoriels et la FAQ MySQL ---------------------------------------------------- Pensez aux balises code et au tag Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça
|
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Inscription : mars 2011 Messages : 3 ![]() |
ah d'accord.. Merci beaucoup pour votre réponse.
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com