Bonjour, je commence une application qui gère une bibliothèque, et je voudrais des conseils concernant mon MCD afin de réaliser une application sur une base la plus correcte.
Mon MCD :
Bonjour, je commence une application qui gère une bibliothèque, et je voudrais des conseils concernant mon MCD afin de réaliser une application sur une base la plus correcte.
Mon MCD :
Salut,
Je le ferais comme ça :
Les questions:
pour chaque AUTEUR, combien de LIVRE au min, max 0,n (min aucun livre, mx n livres)
pour chaque LIVRE combien d'AUTEUR au min, max 1,1 (min 1 auteur, max 1 - pourrait être n si plusieurs auteurs pour 1 livre)
pour chaque DOMAINE combien de LIVRE au min, max 0,n (aucun livre, n livres)
pour un LIVRE combien de DOMAINE au min, max 1,1 (min 1 domaine, max 1 - pourrait être n si plusieurs domaines pour 1 livre)
pour un LIVRE combien d'EMPRUNT au min, max 0,n (min=0 jamais emprunté, max n)
pour un EMPRUNT combien de LIVRE au min, max 1,1 un emprunt concerne toujours 1 livre
pour un LIVRE combien d'EMPRUNT min, max 0,n 0=jamais emprunté, n)
pour un EMPRUNT combien d'EMPRUNTEUR min, max 1,1
pour un EMPRUNTEUR combien d'EMPRUNT min, max 0,n
La valeur min te sert à savoir si la clé étrangère est obligatoire dans la table: 0 pas oblig, 1 oblig.
La valeur max te sert à placer la clé étrangère dans la table ou la relation max est 1
Si tu as des relations x,n x,n (avec n en max des 2 côtés), il faudra ajouter une table. Exemple: si plusieurs auteurs ont écrit des livres, il faudra ajouter une table AUT_LIVRE (entre AUTEUR et LIVRE) avec les clés Id_Auteur, Id_Livre.
Idem si un livre appartient à plusieurs DOMAINE (GUERRE 14-18 et DOCUMENTAIRE), tu devras ajouter une table DOM_LIVRE qui aura les clés Id_Domaine et Id_Livre.
Si je ne suis pas clair, reviens vers moi.
Bon courage.
solilog
salut
tu peux encore affiner
l'auteur et l'emprunteur sont des personnes avec certaines spécificités mais ce sont quand même des personnes
tu dois donc pouvoir rassembler ces deux entités
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 ID Personne Non Prénom Date de naissance ....
Oui tu peux affiner ...
Mais on va laisser samidz2014 piger et répondre.
solilog
Un cas classique.
Je me rappelle lors de mon BTS, on avait étudié ce cas.
Et c'est parce que je m'en rappelle très bien que je te suggère deux petites modifications :
1) Mettre l'ISBN en tant que clé primaire car c'est ça l'identifiant pour un livre.
2) Ajouter une notion d'exemplaire. Un livre possède un seul ISBN mais une bibliothèque peut posséder plusieurs exemplaire d'un même livre. L'emprunteur n'empruntera pas un livre mais un exemplaire.
Au passage, il n'y a qu'un seul M à "Domaine"
Je pense par contre que l'ISBN n'est pas un bon choix comme clé primaire car certains ouvrage n'en possèdent pas (ceux avant les années 70), plutôt un champ auto-incrémenté.
Bonjour;
Désoler pour le retard;;
Merci solilog pour la correction du MCD
Je supose que (Pour ne pas compliquer):si plusieurs auteurs ont écrit des livres, il faudra ajouter une table AUT_LIVRE (entre AUTEUR et LIVRE) avec les clés Id_Auteur, Id_Livre.
Idem si un livre appartient à plusieurs DOMAINE (GUERRE 14-18 et DOCUMENTAIRE), tu devras ajouter une table DOM_LIVRE qui aura les clés Id_Domaine et Id_Livre.
- Un livre est écrit par un seul auteur.
- Un livre appartient à un seul domaine.
Effectivement, mais le nombre des emprunteurs est assez supérieur par rapport au nombre d'auteurs (peut-être : 1 auteur contre 50 emprunteur), + un auteur et un emprunteur ont quelque champs différant, alors je pense que c'est mieux à créer deux tables pour chacun.tu peux encore affiner
L’auteur et l'emprunteur sont des personnes avec certaines spécificités mais ce sont quand même des personnes
tu dois donc pouvoir rassembler ces deux entités
ISBN vas être le Id de ma table LivreJe me rappelle lors de mon BTS, on avait étudié ce cas.
Et c'est parce que je m'en rappelle très bien que je te suggère deux petites modifications :
1) Mettre l'ISBN en tant que clé primaire car c'est ça l'identifiant pour un livre.
2) Ajouter une notion d'exemplaire. Un livre possède un seul ISBN mais une bibliothèque peut posséder plusieurs exemplaires d'un même livre. L'emprunteur n'empruntera pas un livre mais un exemplaire.
Au passage, il n'y a qu'un seul M à "Domaine"
J'ai créé un champ nbr_exemplaire dans la table Livre, est ce que vous voulez dire créer une autre table nommée Exemplaire?
Mon MCD:
Avec l'ajout de la table examplaire:
Un livre peut avoir plusieurs exemplaires au max, et 1 au min.
Un exemplaire appartient à un seul et un seul livre.
salut
ISBN n'as plus cour maintenant c'est l'EAN qui prime
sauf qu'il existe quelque éditeur récalcitrant avec ces différentes classification
je te conseille donc de te faire ton propre Identifiant
quand a ton MCD l'emprunt ce fait sur l'exemplaire et plus sur le livre ^^
l'exemplaire c'est le "stock" de tes livres
Salut,Zavez tous raison, j'ai loupé l'exemplaire, mea culpa.
L'important c'est que samidz2014 pige le truc.
Tcho
solilog
L'ISBN 13 est devenu la même chose que l'EAN 13 depuis 2007 de mémoire. On avait avant un ISBN à 10 chiffres sa capacité de numérotation devenant insuffisante et cela a permis de le rendre compatible avec l'EAN 13 qui servait à générer les codes barres. Mais on s'éloigne du sujet
On est d'accord pour dire que dans tous les cas et en dehors de ce précisions futiles ce n'est pas le bon choix comme identifiant.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager