|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() |
Bonjour à tous,
j' aurais voulu avoir vos avis sur comment réaliser une relation de type plusieurs-à-plusieurs? Personellement je procède ainsi: Si je dois realiser une relation plusieurs-à-plusieurs entre deux tables A et C, j' introduis une table de liaison L dont la clé est composée des cles des tables A et C. Et une relation 1-a-plusieurs entre A et L et une relation 1-a-plusieurs entre C et L. A: 1--->+ L: + <--- 1 C: cleA cleA cleC cleC Au travail (ce ne sont pas des onformaticiens) j' ai vu des choses du genre, dans L la clé etait un numero auto et les cles A et cles B ne formaient pas la cle de L. Cette facon de faire me laisse sceptique, je peux notamment avoir plusieurs fois la meme association en memoire (redondance) et une association ne se definit pas par un numero mais par ce qu' elle lie donc le numero auto m' aprait inutile ( perte de place). Qu' en pensez vous? Merci d' avance.[/b] |
|
|
00
|
|
|
#2 |
![]() ![]() Inscription : janvier 2004 Messages : 15 861 ![]() |
ça peut effectivement être le cas dans des relations typées ou alors quand cette table L est liée à une autre entité.
1° cas : Je lie les entités homme et femme avec la table de relation lien_HF qui a l'id de homme et l'id de femme MAIS aussi le type : époux, fils, père, etc... et là j'aurais effectivement le couple id_homme et id_femme qui peuvent être répétée (l'épouse d'un homme peut aussi être sa cousine par exemple... oui je sais... c'est pas bien mais c'est qu'un exemple 2° cas : je lie voiture et option par la table L, une voiture a plusieurs options et une option peut être mise sur plusieurs voitures... c'est bien la relation des 2 qui feront que j'aurais un prix... je lie donc L à l'entité barême_prix. Ici je mettrais un ID en PK dans L pour lier les 2 tables |
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() |
OK dans ces cas la je suis d' accord avec toi, je n' y avais pas pensé ni ceux de mon boulot d' ailleurs.
(surtout le cas de la cousine mariee au cousin Dans le cas des voitures ta clé de L est , en plus de l' ID du bareme_prix, quand même composée de des id de la voiture et de l' option ou non? Dis moi si je me trompe mais si ils ne font pas partie de la cle on pourra avoir plusieurs fois la meme option sur une voiture, non? Autre question totalement a part, c quoi le tag Delestage? Merci en tout cas d' avoir deja eclaire ma lantrene. |
|
|
00
|
|
|
#4 |
![]() ![]() Inscription : janvier 2004 Messages : 15 861 ![]() |
Pour le cas de la voiture l'ID est une clé technique auto-incrémenté (en fait c'est un très mauvais exemple
Le fait qu'une autre colonne soit la PK ne t'interdit pas d'ajouter une clé unique délestage = déplacement du sujet |
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() |
Ok Si j' ai bien compris en fait beaucoup de choses sont immaginables tout dépend des contraintes que l' on a?!
Je crois que je vais pouvoir mettre le tag résolu. Merci pour tes réponses ultra rapides en tout cas. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com