Bonjour,
Voici à quoi devrait ressembler votre MCD, le MLD correspondant et le code SQL permettant la génération du schéma relationnel.
Bonne continuation !
Bonjour,
Quelques remarques :
Certains livres n'ont pas d'auteur connu, c'est pourquoi la cardinalité mini de zéro est requise, d'autres ont un ou plusieurs auteurs.
Un livre peut rester à l'état de manuscrit ou devenir un ouvrage lorsqu'il est édité par un éditeur, le même livre pouvant être édité plusieurs fois (par un même éditeur ou plusieurs).
Un ouvrage possède un identifiant ISBN obligatoire depuis 1970, mais les ouvrages anciens n'en ont pas
Un même ouvrage est imprimé en plusieurs exemplaires, c'est l'exemplaire qui peut être emprunté par un lecteur et non le livre ou l'ouvrage. Dans les bibliothèques, chaque exemplaire possède un code à barres unique.
Comme un lecteur doit pouvoir emprunter le même exemplaire plusieurs fois (si l'envie de relire lui prend) mais qu'un même exemplaire ne peut être emprunté qu'une seule fois à un instant "t", la date contribue à l'association "emprunter" et, dans le script, il faudra évacuer l'identifiant de l'emprunteur de la PK de cette table associative
Un même lecteur peut être abonné dans plusieurs bibliothèques (c'est assez courant) mais il faut vérifier que l'emprunteur est membre de la bibliothèque, d'où la contrainte (CIF) d'inclusion (i cerclé)
Enfin, j'ai choisi dans le MCD ci-dessous d'identifier l'ouvrage relativement au livre (sans livre, pas d'ouvrage) et l'exemplaire relativement à l'ouvrage (pour la même raison) : l'ouvrage comme l'exemplaire sont des entités-type faibles.
Ce qui donne le modèle suivant :
Pièce jointe 582155
Note : le booléen "disponible O/N" est inutile. Un exemplaire est disponible s'il n'est pas emprunté (absent de la table associative "emprunter" ou bien la date de fin d'emprunt est échue)
EDIT : de "exemplaire" vers "localiser" la cardinalité devrait être 0,1 t non 1,1. Tout exemplaire n'étant pas obligatoirement dans une bibliothèque
+ Répondre à la discussion
Cette discussion est résolue.
Discussions similaires
-
Réponses: 1
Dernier message: 19/08/2005, 09h31
-
Réponses: 3
Dernier message: 11/08/2005, 09h12
-
Réponses: 3
Dernier message: 03/08/2005, 21h33
-
cardinalité
Par star_light dans le forum Décisions SGBD
Réponses: 8
Dernier message: 30/12/2004, 17h59
-
Cardinalités
Par Pingwin dans le forum Diagrammes de Classes
Réponses: 6
Dernier message: 30/01/2003, 18h22
Partager