Un clé primaire qui accepte les doublant ??!!

nurdinosda Messages postés 11 Date d'inscription lundi 4 juillet 2011 Statut Membre Dernière intervention 9 juillet 2011 - 12 mai 2011 à 16:11
nurdinosda Messages postés 11 Date d'inscription lundi 4 juillet 2011 Statut Membre Dernière intervention 9 juillet 2011 - 15 mai 2011 à 13:31
bonjours tt le monde.
voila je suis entrain de concevoir une base de données pour une bibliothèque qui se compose de 3 étages. les livres et les ouvrages sont identifiés par un numéro d'inventaire (qui est la clé primaire).
Le problème :le numéro d'inventaire se double entre les 3 étages de la bibliothèque.
est ce que je dois créer un autre champs et lui donner la clé primaire, ou bien laisser le num d'inventaire

3 réponses

cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
12 mai 2011 à 16:50
Le but d'une clé primaire est d'identifier de façon unique et certaine un élément. Elle ne peut donc pas, par définition, accepter de doublons.
Le problème :le numéro d'inventaire se double entre les 3 étages de la bibliothèque.

3 raisons possibles :
- le n° d'inventaire n'a pas été judicieusement choisi, il ne permet pas d'identifier de façon unique un ouvrage
- la notion d'étage est importante dans l'identification d'un ouvrage. Elle doit donc aussi apparaitre dans ta base de données et constitué la clé avec n° d'inventaire.
- Tu as une autre notion (type d'ouvrage, catégorie, etc ...) qui permet, en plus du n° d'inventaire, d'identifier de façon unique tes ouvrages. Cette notion là doit donc apparaitre dans la table et constituer la clé primaire avec le n° d'inventaire

Autre possibilité, un peu contre productive, avoir une base, ou au minimum une table par étage, de sorte à ne pas avoir de doublons dans chaque table.


[i][b]---- Sevyc64 (alias Casy) ----
[hr]# LE PARTAGE EST NOTRE FORCE #/b/i
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
13 mai 2011 à 01:44
Salut

Belle explication de Casy.
J'aurai dit pareil : une double clé (couple de champ) primaire "étage" + "Id"

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
0
nurdinosda Messages postés 11 Date d'inscription lundi 4 juillet 2011 Statut Membre Dernière intervention 9 juillet 2011
15 mai 2011 à 13:31
merci casy pour l'explication...
merci jack...c'est l solution je crois: une double clé primaire "étage" + "Id"
0
Rejoignez-nous