Table de départ
BIBLIOGRAPHIE
| ISBN | TITRE | AUTEUR | EDITEUR | ANNEE | ADRESSE EDITEUR | PAGES |
|---|
1NF
Les champs ont des valeurs atomiques ; pas de valeurs composées.Mène à extraire
AUTEUR dans une table à part.
LIVRE
| ISBN | TITRE | EDITEUR | ANNEE | ADRESSE EDITEUR | PAGES |
|---|
AUTEUR
| IDAUTEUR | NOM | PRENOM |
|---|
Pour pouvoir toujours relier livres et auteurs, on introduit une table de liens.
LIVRE_AUTEUR
| ISBN | IDAUTEUR |
|---|
2NF
Chaque table a bien une clé.NF2 concerne les clés primaires composées ; le problème ne se pose pas ici.
On peut trouver un exemple de normalisation en NF2 sur wikipedia.
3NF
"Tout attribut d’une relation (= table) dépend fonctionnellement de sa clé"Ce n'est pas le cas pour
ADRESSE EDITEUR, qui dépend de EDITEUR, et non pas de ISBN, qui est la clé primaire de la table.
Donc on sort Editeur de la table
LIVRE. On introduit une clé primaire pour la table EDITEUR, et on utilise cette clé pour référencer l'éditeur dans la table LIVRE.
LIVRE
| ISBN | TITRE | IDEDITEUR | ANNEE | PAGES |
|---|
EDITEUR
| IDEDITEUR | NOM | ADRESSE |
|---|
AUTEUR
| IDAUTEUR | NOM | PRENOM |
|---|
LIVRE_AUTEUR
| ISBN | IDAUTEUR |
|---|