270 likes | 445 Views
Michel MATTIUZZI – FAC Micro Consultant – Formateur Microsoft Office Specialist Master Instructor Enseignant à Aix Marseille Université. Création d'une application de gestion de base de données relationnelle. Définitions.
E N D
Michel MATTIUZZI – FAC Micro Consultant – Formateur Microsoft Office Specialist Master Instructor Enseignant à Aix Marseille Université Création d'une application de gestion de base de données relationnelle
Définitions Une base de données est un ensemble d'informations stocké par un ordinateur selon un structure définie (BD) Un système de gestion de bases de données est un ensemble d'outils logiciels qui permet la manipulation de BD (SGBD) Réalisation : Michel Mattiuzzi - FAC Micro
Énoncé du problème La société LES COMPTOIRS DU SUD commercialise des produits alimentaires. Ses clients sont des entreprises de commerce alimentaire et sont situés dans divers pays du monde. Cette société (fictive) souhaite informatiser la gestion de ses produits et de ses clients et de ses commandes à l'aide d'un Système de Gestion de Bases de Données Relationnelles. Elle fournit les documents et les règles issus de la gestion actuelle. Le discours Les clients de la société ont effectué au moins une commande Il faut différencier le prix de vente du prix catalogue Les produits sont classés par catégorie Etc… Réalisation : Michel Mattiuzzi - FAC Micro
FICHE CLIENT FICHE PRODUIT BON DE COMMANDE N° Commande : 20758 Date : 12/05/2002 Code client: CAVIN La Cave à Vin 122, route du Ventoux 84000 Avignon Code client : COMVA Nom : Spécialités du sud Adresse :25, impasse du Renard 84300 Orange Référence : 26 Désignation : Tarte aux pommes Quantité par unité : 1 tarte Prix Unitaire : 4,20 € CATEGORIE : Dessert Pâtisseries, friandises, glaces… Ref Désignation Unité Qté PU Total 18 26 Camembert Tarte aux pommes 1 boîte 1 tarte 20 10 3,00 € 4,00 € 60,00 € 40,00 € Total HT 100,00 € TVA 19,60 € Total TTC 119,60 € LES DOCUMENTS ACTUELS Réalisation : Michel Mattiuzzi - FAC Micro
Niveau conceptuel Le modèle Entité/Association Réalisation : Michel Mattiuzzi - FAC Micro
On établit à ce niveau : Le Modèle Conceptuel de Données (MCD) ? Que doit-on mémoriser Réalisation : Michel Mattiuzzi - FAC Micro
1ère étape : Identification des entités • Définition • Une entité est un objet, une chose concrète ou abstraite qui peut être reconnue distinctement • Exemples d'entités : Client, Produit, Salarié, Livre, Film… Après consultation des documents existants et des renseignement oraux obtenus, se déssinent 3 entités candidates CLIENT COMMANDE PRODUIT Réalisation : Michel Mattiuzzi - FAC Micro
2ème étape : les propriétés • Définition • Une propriété (ou attribut ) est une caractéristique associée à une entité • Exemples d'attribut : l'âge d'une personne, le code d'un fournisseur, le numéro d'un produit… Chaque entité est complétée par ses propriétés PRODUIT Refproduit Désignation Unité Qté PrixVente PrixUnitaire Catégorie Description Illustration CLIENT CodeClient Nomclient AdresseClient CodePostalClient VilleClient COMMANDE N°commande Date commande TotalLigneTotalHT TVA TotalTTC Réalisation : Michel Mattiuzzi - FAC Micro
3ème étape :Définir les identifiants • Définition • Un identifiant d'une entité est constitué par un de ses attributs qui doit avoir une valeur unique pour chaque occurrence de l’entité. • Exemples d'identifiant : le numéro d'immatriculation d'une voiture, le code-barre d'un produit… On souligne la propriété qui servira d'identifiant pour chaque occurrence de l'entité PRODUIT Refproduit Désignation Unité Qté PrixVente PrixUnitaire Catégorie Description Illustration COMMANDE N°commande Date commande TotalLigneTotalHT TVA TotalTTC CLIENT CodeClient Nomclient AdresseClient CodePostalClient VilleClient Réalisation : Michel Mattiuzzi - FAC Micro
4ème étape :Associer les entités • Définition • Une association est un lien entre plusieurs entités. • Les associations portent un verbe (de préférence lisible à la voix active et à la voix passive) caractérisant au mieux la relation. • Exemples d'association : le mariage de deux personnes, le transport d'un produit vers un entrepôt, l'affectation d'un employé à un service… COMMANDE N° commande Date commande TotalLigneTotalHT TVA TotalTTC CLIENT CodeClient Nomclient AdresseClient CodePostalClient VilleClient PRODUIT Code produit Désignation Unité Qté PrixVente PrixUnitaire Catégorie Description Illustration passer contenir Réalisation : Michel Mattiuzzi - FAC Micro
5ème étape : étude des cardinalités Définition Une cardinalité, dans une association, exprime le nombre de participations possibles d'une occurrence de chaque entité à l'association. Ce nombre étant variable, on note la cardinalité minimum et la cardinalité maximum. Comme il y a deux entités (au moins) associées, la cardinalité est précisée pour chaque entité Réalisation : Michel Mattiuzzi - FAC Micro
Placement des cardinalités 1,n 0,n 1,n 1,1 COMMANDE N° commande Date commande TotalLigneTotalHT TVA TotalTTC CLIENT CodeClient Nomclient AdresseClient CodePostalClient VilleClient PRODUIT Code produit Désignation Unité Qté PrixVente PrixUnitaire Catégorie Description Illustration passer contenir Réalisation : Michel Mattiuzzi - FAC Micro
Utilisation des symboles corrects 1,n 0,n 1,n 1,1 COMMANDE N° commande Date commande TotalLigneTotalHT TVA TotalTTC CLIENT CodeClient Nomclient AdresseClient CodePostalClient VilleClient PRODUIT Code produit Désignation Unité Qté PrixVente PrixUnitaire Catégorie Description Illustration contenir Verbe non obligatoire dans le rond On obtient un Modèle Conceptuel de Données (MCD) que l'on va vérifier au moyen des règles de normalisation Réalisation : Michel Mattiuzzi - FAC Micro
NORMALISATION Réalisation : Michel Mattiuzzi - FAC Micro
Première forme normale • Dans une entité, toutes les propriétés sont élémentaires (une propriété calculée n'est pas élémentaire) • Il existe au moins une un identifiant caractérisant chaque occurrence de l’objet représenté. COMMANDE N°commande Date commande TotalLigneTotalHT TVA TotalTTC Réalisation : Michel Mattiuzzi - FAC Micro
Deuxième forme normale • L’entité doit être en 1NF • Toute propriété d’une entité doit dépendre de la clé par une DF élémentaire. C’est à dire que toute propriété de l ’entité doit dépendre de tout l’identifiant. 1,N Contenir Qté PrixVente 0,N COMMANDE N° commande Date commande PRODUIT Code produit Désignation Unité PrixUnitaire Catégorie Description Illustration Dans la table "Produits" la Qté vendue ne dépend pas seulement du code produit mais aussi du "N° commande" la Qté va figurer dans l'association Réalisation : Michel Mattiuzzi - FAC Micro
1,1 1,N CATEGORIE Code catégorie Catégorie Description Illustration PRODUIT Code produit Désignation Unité PrixUnitaire Troisième forme normale • L’entité doit être en 2NF • Toute propriété doit dépendre de la clé par une DF élémentaire directe (on élimine les dépendances issues de la transitivité). • Ce cas se présente dans l'entité "Produits" PRODUIT Code produit Désignation Unité PrixUnitaire Catégorie Description Illustration Réalisation : Michel Mattiuzzi - FAC Micro
Le Modèle Conceptuel de Données (MCD) 0,n 1,n 1,N 1,1 CLIENT CodeClient Nomclient AdresseClient Code postalClient VilleClient COMMANDE N° commande Date commande Contenir Qté PrixVente PRODUIT Code produit Désignation Unité PrixUnitaire 1,1 1,n CATEGORIE Code catégorie Catégorie Description Illustration Réalisation : Michel Mattiuzzi - FAC Micro
Niveau Logique Le modèle Entité/Association Réalisation : Michel Mattiuzzi - FAC Micro
? • La création d’une base de données relationnelle implique que l’on passe du niveau conceptuel au niveau logique. • Les entités et les associations doivent être traduites sous forme de relations (tables) : le modèle logique ou schéma relationnel. Comment mémoriser Réalisation : Michel Mattiuzzi - FAC Micro
-,1 -,n Client Code client …. Commande N°Commande …. Traduction des associations de cardinalités( ,1) vers ( ,N) C’est le cas le plus simple : • Chaque entité devient une relation (table). • L'identifiant de l’entité située sur la patte ( ,N) de l’association migre dans la relation (table) correspondant à l’entité côté ( ,1). • Code client est la clé d’une autre relation (table) : c’est une clé étrangère. 1,1 1,n Produit Code produit Désignation Unité PrixUnitaire Catégorie Code catégorie Catégorie Description Illustration Client (code client, Nomclient, AdresseClient, CodepostalClient, VilleClient) Commande (n° commande, Date commande, #CodeClient) Produits (Code produit, Désignation, Unité, Prix catalogue, #Code catégorie) Réalisation : Michel Mattiuzzi - FAC Micro
Contenir Qté PrixVente PRODUIT Code produit COMMANDE N° Commande Traduction des associations de cardinalités ( ,N) vers ( ,N) 1,n 0,n La règle est de constituer une relation (table) avec les identifiants des entités associées (qui constituent la clé primaire de la table) la relation (table) créée se voit adjoindre les propriétés portées par l’association comme attributs supplémentaires. Ces attributs ne font pas partie de la clé. Contenir (#N°Commande, #CodeProduit, Qté, Prixvente) Réalisation : Michel Mattiuzzi - FAC Micro
Le Schéma Relationnel final Client(codeclient, Nomclient, AdresseClient, CodepostalClient, VilleClient) Produit (Code produit, Désignation, Unité, Prix catalogue, #Code catégorie) Catégorie( Code catégorie, Catégorie, Description, Illustration) Commande (N° commande, Date commande, #CodeClient) Contenir (#N°Commande, #CodeProduit, Qté, Prix vente) Réalisation : Michel Mattiuzzi - FAC Micro
Niveau Physique Le modèle Entité/Association Réalisation : Michel Mattiuzzi - FAC Micro
Access • Déclaration de la base de données • Création des tables à partir des relations précédentes • Mise en relation des tables Utilisation d'un système de gestion de base de données relationnelle pour créer physiquement l'application Réalisation : Michel Mattiuzzi - FAC Micro