Bonsoir Blue Moon,
Par conformité à la théorie relationnelle (je vous renvoie à l’ouvrage de référence de C.J. Date An Introduction to Database Systems (8th Edition) au chapitre 23, « Temporal Databases »), si l’entité-type DemandeH est utilisée pour les demandes, elle doit normalement être porteuse d’un attribut correspondant à la date depuis laquelle chaque demande est dans son état actuel :
Depuis la date date_dem, la demande id_dem est dans l’état id_etat_dem.
Par contraste, les états précédents d’une demande sont l’objet de l’entité-type Historique_demande (la préposition « durant » prenant alors le relais de la préposition « depuis ») :
Durant la période durant, la demande id_dem était dans l’état etat_H.
Une période est constituée d’une date de début et d’une date de fin, mais dans votre cas, la date de fin d’une période est selon toute vraisemblance obtenue à partir de la date de début date_H de la période suivante (ou de la valeur de l’attribut date_dem de l’entité-type DemandeH dans le cas de l’historisation la plus récente de la demande).
Si on fait l'économie de la date de fin d’une période (économie que pour ma part j’évite), lors du passage au MLD, on devrait donc avoir les tables suivantes (DemandeH est ici renommée en DEMANDE) :
L’attribut id_dem est le seul élément de la clé primaire {id_dem} de la table DEMANDE et l’image de cet attribut dans la table HISTORIQUE_DEMANDE participe à la clé primaire {id_dem, date_H} de cette dernière.
Partager