DÉVELOPPEMENT D'APPLICATIONS AVEC ...

NORMALISATION
- Ensemble de règles établies en 1970 par E.F. Codd pour construire des bases de données relationnelles efficaces.
- La normalisation consiste à transformer un ensemble de données pour qu'il respecte les normes de Codd.
- Il y a trois niveaux de normalisation: 1NF, 2NF et 3NF:
- Première forme normale (1NF):
- Chaque cellule d'une table doit contenir une valeur unique et cette valeur doit être élémentaire.
- Deuxième forme normale (2NF):
- Chaque attribut de la table doit dépendre de la clé primaire au complet et non d'une partie de la clé.
- Troisième forme normale (3NF):
- Aucun attribut non-clé doit dépendre d'un autre attribut non-clé.
EXEMPLE
En étudiant un système de distribution, vous notez qu'il existe une chose, un objet, une entité qui s'appelle une "Commande d'achat". Ce document est réel, il existe et le préposé aux ventes s'en sert lorsqu'il doit saisir une commande provenant d'un client. Cependant, pour inclure cet objet dans notre système PB, il faut identifier l'information contenu dans le document et non le morceau de papier. On pourrait résumé l'information comme ceci:
COMMANDE-ACHAT
Nom-client
Adresse-client
Date-commande
Nom-fournisseur
Adresse-fournisseur
Produits-commandés *
Code-produit
Description
Prix-de-vente
Quantité
Montant
Sous-total-commande
Taxe-provinciale
TPS
Total-commande
Afin de construire un système relationnel selon les règles, il faut d'abord normaliser cette structure.
En 1NF:
Commande-achat (Num-commande, Date-commande, Nom-client, Adresse-client, Nom-fournisseur, Adresse-fournisseur, Sous-total-commande, Taxe-provinciale, TPS, Total-commande)
Produits-commandés (Num-commande, Code-produit, Description, Prix-de-vente, Quantité, Montant)
En 2NF:
Commande-achat (Num-commande, Num-client, Num-fournisseur, Date-commande, Sous-total-commande, Taxe-provinciale, TPS, Total-commande)
Produits-commandés (Num-commande, Code-produit, Prix-de-vente, Quantité, Montant)
Client (Num-client, Nom-client, Adresse-client)
Fournisseur (Num-fournisseur, Nom-fournisseur, Adresse-fournisseur)
Produit (Code-produit, Description)
En 3NF:
Commande-achat (Num-commande, Num-client, Num-fournisseur, Date-commande)
Produits-commandés (Num-commande, Code-produit, Prix-de-vente, Quantité)
Client (Num-client, Nom-client, Adresse-client)
Fournisseur (Num-fournisseur, Nom-fournisseur, Adresse-fournisseur)
Produit (Code-produit, Description)