Bonsoir,
CinePhil a fourni sa réponse avant la mienne, mais comme abondance de biens ne nuit pas, je vous fais part néanmoins d'une variante de la vie d'une puce...
Je ne suis pas sûr de vous avoir suivie de A à Z. Quoi qu’il en soit, il serait sain de mettre en œuvre deux relations entre les balises et les puces, pour exprimer deux types de faits temporels distincts. En effet :
1) La puce P1 peut être actuellement affectée, auquel cas elle équipe une certaine balise B1.
2) Par ailleurs, cette puce P1 a pu être précédemment affectée aux balises B2, ..., Bn (et pourquoi pas B1), à des périodes évidemment différentes.
Ainsi, dans le MCD ci-dessous, une puce peut, depuis une certaine date, équiper une certaine balise (association-type PUCE_ACTIVE), laquelle, si j’ai bien compris, est équipée de cette seule balise depuis cette date.
De même, une puce a pu équiper telle ou telle balise, mais durant des périodes distinctes et une balise a pu être équipée de différentes puces durant des périodes distinctes.
MCD
N.B.
— Une période est composée d’un couple {date de début, date de fin}.
— Les pointes de flèches expriment des CIF :
PUCE X PERIODE -> BALISE (pendant une période donnée, une puce n’a pu équiper qu’une seule balise) ;
BALISE X PERIODE -> PUCE (si j’ai bien compris, pendant une période donnée, une balise n’a pu être équipée que d’une seule puce).
MLD
Notes :Table PUCE_ACTIVE :
Le mickey <pk, fk2> signifie que {PuceId} est clé primaire de la table et clé étrangère (par rapport à la table PUCE).
Le mickey <ak, fk1> signifie que {BaliseId} est clé alternative de la table et clé étrangère (par rapport à la table BALISE). La clé alternative est la conséquence du fait qu’à une date donnée, une balise n’est équipée que d’une seule puce.
Table PUCE_HISTO :
La clé primaire de la table est la paire {PuceId, PeriodeAffectation}.
La table comporte aussi une clé alternative {BaliseId, PeriodeAffectation}, car pendant une période donnée, une balise n’a été équipée que d’une seule puce.
Le mickey <ak, fk2> signifie que {BaliseId} est clé alternative de la table et clé étrangère (par rapport à la table BALISE).
Partager