Du Modle Conceptuel des donnes pour rflchir Au

  • Slides: 36
Download presentation
Du Modèle Conceptuel des données pour réfléchir Au modèle Logique de données modèle «

Du Modèle Conceptuel des données pour réfléchir Au modèle Logique de données modèle « mathématique » Au modèle Physique de données pour programmer Modèle Logique de données MCD MLD MPD 1

Le Modèle Logique de Données • La modélisation conceptuelle a décrit de manière exhaustive

Le Modèle Logique de Données • La modélisation conceptuelle a décrit de manière exhaustive les données du système d’information et leurs structures avec deux outils: Ø ENTITES - ASSOCIATIONS § Comment intégrer les contraintes techniques pour une implantation informatique, un SI automatisé ? Modèle Logique de données 2

Les techniques d’implantation d’un SI IMPLANTATION SUR MACHINE = MODELE PHYSIQUE • Le modèle

Les techniques d’implantation d’un SI IMPLANTATION SUR MACHINE = MODELE PHYSIQUE • Le modèle fichier (S. G. F) • Le modèle SGBD : On implante le SI à partir d’un logiciel appelé Système de Gestion de Bases de Données Modèle Logique de données 3

Le Modèle Logique de Données • Le MLD prend en compte la nature de

Le Modèle Logique de Données • Le MLD prend en compte la nature de l’outil logiciel avec lequel sera implanté la future base de données. • Différents SGBD basés sur – le modèle hiérarchique ou réseau IMS/DL 1 chez IBM – le modèle relationnel ORACLE, My. SQL – le modèle objet db 4 O Modèle Logique de données 4

Modèle logique relationnel : MLR • Edgar Frank Codd : A Relational Model of

Modèle logique relationnel : MLR • Edgar Frank Codd : A Relational Model of Data for Large 1970 Shared Data Bank ; CCAM 13; N° 6, june • Simple à appréhender • Basé sur la théorie des ensembles en mathématique • Représentation de l’ORGANISATION : Manipulation de listes de données • Indépendance totale avec le système d’exploitation et le stockage physique • Règles de normalisation Modèle Logique de données 5

Plan de l’étude : 1 - Exemples de bases de données relationnelles. 2 -

Plan de l’étude : 1 - Exemples de bases de données relationnelles. 2 - Définitions du modèle relationnel. 3 - Passage du MCD au MLD relationnel. 4 - Exemples complexes. Modèle Logique de données 6

La base de données du Père Noël Modèle Logique de données 7

La base de données du Père Noël Modèle Logique de données 7

La traduction en tables de la base Père. Noël • « résider » Modèle

La traduction en tables de la base Père. Noël • « résider » Modèle Logique de données 8

La traduction du MCD: Père. Noël Modèle Logique de données 9

La traduction du MCD: Père. Noël Modèle Logique de données 9

La traduction du MCD: Père. Noël • « commander » et « obtenir »

La traduction du MCD: Père. Noël • « commander » et « obtenir » Modèle Logique de données 10

La traduction du MCD: Père. Noël • Les fournisseurs de cadeaux: Modèle Logique de

La traduction du MCD: Père. Noël • Les fournisseurs de cadeaux: Modèle Logique de données 11

Le passage au MLD • Les entités sont-elles transformées en tables ? • Toute

Le passage au MLD • Les entités sont-elles transformées en tables ? • Toute association est-elle transformée en tables ? • Si non , quelles sont les associations transformées en tables ? Quelle est la structure de ces tables ? Modèle Logique de données 12

Les tables de la base Père. Noël • ENFANT ( no. Enfant , nom.

Les tables de la base Père. Noël • ENFANT ( no. Enfant , nom. Enfant, prénom. Enfant, gentil, code. Adresse ) • ADRESSE ( code. Adresse, rue. Adresse, cp , ville, cheminée, fénêtre, souterrain ) • COMMANDER ( no. Enfant, no. Cadeau ) • OBTENIR(no. Enfant, no. Cadeau ) • FOURNISSEUR ( no. Fsseur, nom. Fsseur, adr. Fsseur ) • CADEAU ( no. Cadeau, nom. Cadeau, no. Fsseur ) Modèle Logique de données 13

2 - Le modèle relationnel • Une base de données relationnelle est constituée d’

2 - Le modèle relationnel • Une base de données relationnelle est constituée d’ un ensemble de tables aussi appelées relations liées entre elles. • La table ou relation ENFANT: ENFANT ( no. Enfant , nom. Enfant, prénom. Enfant, gentil, code. Adresse ) • Clé primaire : no. Enfant ; la connaissance de la valeur de la clé primaire permet de connaître la valeur des autres propriétés. Modèle Logique de données 14

La clé étrangère ENFANT ( no. Enfant , nom. Enfant, prénom. Enfant, gentil, code.

La clé étrangère ENFANT ( no. Enfant , nom. Enfant, prénom. Enfant, gentil, code. Adresse ) • Clé étrangère: code. Adresse Clé présente dans une table dont elle n’est pas la clé primaire, tout en étant clé primaire d’une autre table. Modèle Logique de données 15

Deux types de tables • Les tables statiques: aucune colonne n’est clé primaire d’une

Deux types de tables • Les tables statiques: aucune colonne n’est clé primaire d’une autre table : (exemples : tables ADRESSE, FOURNISSEUR) • Les tables dynamiques: Il existe au moins une colonne qui est clé primaire d’une autre table (exemples : tables COMMANDER , OBTENIR , etc) Modèle Logique de données 16

Passage au MLD relationnel • Règle 0 : traitement des entités Une entité est

Passage au MLD relationnel • Règle 0 : traitement des entités Une entité est traduite par une table ( une relation ) de même nom dont les colonnes correspondent aux propriétés de l’entité. La clé primaire de cette table est l’identifiant de l’entité Modèle Logique de données 17

Passage au MLD relationnel Traitement des associations : Tenir compte des cardinalités maximales de

Passage au MLD relationnel Traitement des associations : Tenir compte des cardinalités maximales de chaque association : 1 et n Modèle Logique de données 18

Passage au MLD Règle 1 : association binaire avec cardinalités maximales : 1 et

Passage au MLD Règle 1 : association binaire avec cardinalités maximales : 1 et n L’association n’est pas transformée en table. L’identifiant de l’entité but (0, n) devient clé étrangère dans la table source (1, 1) Modèle Logique de données 19

Exemple de la règle 1 but source CREATE TABLE PRODUIT ALTER TABLE PRODUIT (

Exemple de la règle 1 but source CREATE TABLE PRODUIT ALTER TABLE PRODUIT ( REFPRODUIT VARCHAR(5) NOT NULL, ADD CONSTRAINT FK_PRODUIT_FOURNISSEUR NOMPRODUIT VARCHAR(60), FOREIGN KEY NOFOURNISSEUR VARCHAR(5) NOT NULL REFERENCES FOURNISSEUR (NOFOURNISSEUR); ) Modèle Logique de données 20

Exemple de la règle 1 MCD MLD NB : Le no de messager n’est

Exemple de la règle 1 MCD MLD NB : Le no de messager n’est pas obligatoirement renseigné dans COMMANDES Modèle Logique de données 21

Passage au MLD relationnel Traitement des associations : Tenir compte des cardinalités maximales de

Passage au MLD relationnel Traitement des associations : Tenir compte des cardinalités maximales de chaque association : 1 et 1 Modèle Logique de données 22

Passage au MLD • Règle 1 bis : association binaire avec cardinalités maximales :

Passage au MLD • Règle 1 bis : association binaire avec cardinalités maximales : 1 et 1 La cardinalité 1, 1 est une contrainte plus forte que la cardinalité 0, 1. Donc: L’ identifiant de l’entité but du lien 1, 1 devient clé étrangère dans la table issue de l’entité source. Modèle Logique de données 23

Exemple de la règle 1 bis MCD MLD Modèle Logique de données 24

Exemple de la règle 1 bis MCD MLD Modèle Logique de données 24

Règle 1 Pour chaque occurrence, 1 valeur à mémoriser une propriété suffit Modèle Logique

Règle 1 Pour chaque occurrence, 1 valeur à mémoriser une propriété suffit Modèle Logique de données 25

Passage au MLD relationnel Traitement des associations : Tenir compte des cardinalités maximales de

Passage au MLD relationnel Traitement des associations : Tenir compte des cardinalités maximales de chaque association : n et n Modèle Logique de données 26

Passage au MLD relationnel Règle 2 : association binaire avec cardinalités maximales : n

Passage au MLD relationnel Règle 2 : association binaire avec cardinalités maximales : n et n, non porteuses de données: L’association est traduite en table avec pour clé primaire, la concaténation des identifiants des entités reliées par l’association. Cette table contient deux clés étrangères. Modèle Logique de données 27

Passage au MLD relationnel • Exemple de la règle 2 : MCD MLD Modèle

Passage au MLD relationnel • Exemple de la règle 2 : MCD MLD Modèle Logique de données 28

Passage au MLD • Règle 2 bis : association binaire avec cardinalités maximales :

Passage au MLD • Règle 2 bis : association binaire avec cardinalités maximales : 1 et n porteuse de données: L’association est traduite en table avec pour clé primaire , la concaténation des identifiants des entités reliées. Cette table contient deux clés étrangères et les propriétés portées par l’association. Modèle Logique de données 29

Exemple de la règle 2 MCD MLD Modèle Logique de données 30

Exemple de la règle 2 MCD MLD Modèle Logique de données 30

Exemple de la règle 2 CREATE TABLE DETAILCOMMANDES (REFPRODUIT VARCHAR(5) NOT NULL, NOCOMMANDE INTEGER

Exemple de la règle 2 CREATE TABLE DETAILCOMMANDES (REFPRODUIT VARCHAR(5) NOT NULL, NOCOMMANDE INTEGER NOT NULL, QUANTITE INTEGER, REMISE INTEGER ); MPD ALTER TABLE DETAILCOMMANDE ADD CONSTRAINT PK_DETAILCOMMANDE PRIMARY KEY (REFPRODUIT, NOCOMMANDE); ALTER TABLE DETAILCOMMANDE ADD CONSTRAINT FK_DC_PRODUIT FOREIGN KEY (REFPRODUIT) REFERENCES PRODUITS(REFPRODUIT); ALTER TABLE DETAILCOMMANDE ADD CONSTRAINT FK_DC_COMMANDE FOREIGN KEY (NOCOMMANDE) REFERENCES COMMANDES(NOCOMMANDE); Modèle Logique de données 31

Règle 2 Pour chaque occurrence, n valeurs à mémoriser une table supplémentaire Modèle Logique

Règle 2 Pour chaque occurrence, n valeurs à mémoriser une table supplémentaire Modèle Logique de données 32

Passage au MLD • Règle 3 : une association ternaire et plus de cardinalités

Passage au MLD • Règle 3 : une association ternaire et plus de cardinalités 0, n- 0, n – L’association est traduite par une table ayant pour clé primaire : la concaténation des clés étrangères provenant des entités participant à l’association. Modèle Logique de données 33

Exemple de la règle 3 MCD MLD Modèle Logique de données 34

Exemple de la règle 3 MCD MLD Modèle Logique de données 34

Passage au MLD On convient de ne pas créer les tables comportant comme unique

Passage au MLD On convient de ne pas créer les tables comportant comme unique propriété son identifiant. Exemple : la table DATE ………. . Et qui voudrait la remplir à chaque réveillon ? Modèle Logique de données 35

Du MLD au Modèle Physique Si le modèle physique de données est conforme au

Du MLD au Modèle Physique Si le modèle physique de données est conforme au modèle logique relationnel, on est sûr de ne pas avoir de soucis de redondance d’informations. Les traitements en seront simplifiés. On garde cette garantie en STS 1 Le modèle physique de données peut être dénormalisé (dans les règles !!) s’il est nécessaire d’optimiser certains traitements. Modèle Logique de données 36