Université Sidi Mohamed Ben Abdellah Ecole Supérieur de Technologie Fès Modèle Logique de Données Cours Systèmes d’information Génie Informatique Adil HACHMOUD Année Universitaire 2005-2006 Introduction La modélisation logiques des données est une représentation des données, issues de la modélisation conceptuelle des données. Elle est exprimée dans un formalisme général et compatible avec l’état de l’art technique. Elle tient compte des aspects coûts/performances liées aux traitements. EST Fès Modélisation des Systèmes d’information 2 Introduction Un modèle « conceptuel » de données est indépendant de l ’état de l ’art technologique. Or, il existe différentes sortes de Système de Gestion de Bases de Données (SGBD) qui ont chacun leur propre modèle. EST Fès Modélisation des Systèmes d’information 3 MLD A ces modèles sont associés: – Système de Gestion de Fichiers ou SGF (pas vraiment des SGBD) – SGBD hiérarchiques organisés selon une arborescence – SGBD réseau (ou CODASYL ) – SGBD relationnels – SGBDOO EST Fès Modélisation des Systèmes d’information 4 Modèle relationnel Le modèle relationnel a été défini par E.F. Codd en 1970 à IBM San José. Aspects fondamentaux du modèle relationnel: – une algèbre permettant de manipuler des tables et des relations – une démarche de conception permettant de définir une collection de relations Un modèle est dit relationnel dans la mesure où il permet de parcourir la structure des données empruntant des chemins non prédéfinis, constitués en dynamique par des requêtes Les concepts du modèle relationnel découlent de la théorie des ensembles EST Fès Modélisation des Systèmes d’information 5 Règles de transformation MCD en MLD relationnel Pour les entités: Toute entité devient une table. L'identifiant de l'entité devient une clé primaire de cette table. Les propriétés de l'entité deviennent des attributs. EST Fès Modélisation des Systèmes d’information 6 Règle I Table issue d’une association binaire (*,*)-(*,1): – (0,n)-(1,1) – (1,n)-(1,1) – (0,n)-(0,1) – (1,n)-(0,1) – (0,1)-(1,1) – (0,1)-(0,1) EST Fès La clé primaire de la table issue de l’entité côté cardinalités (*,*) est dupliquée dans la table issue de l’entité côté (*,1) où elle devient clé externe (qui peut être une valeur nulle). Modélisation des Systèmes d’information 7 Règle II Table issue d’une association binaire (*,n)-(*,n): – (0,n)-(0,n) – (1,n)-(1,n) – (1,n)-(0,n) Une table ayant comme clé une clé composée des identifiants des 2 entités est créée. Les éventuelles propriétés de l’association deviennent les attributs de la table. EST Fès Modélisation des Systèmes d’information 8 Règle III Table issue d’une relation ternaire ou supérieure. Une table ayant comme clé une clé composée des identifiants des entités est créée. Les éventuelles propriété de l’association deviennent les attributs de la table. EST Fès Modélisation des Systèmes d’information 9 Associations réflexives 1 Table issue d’une association réflexive (0,n)-(0,1). La clé primaire de la table issue de l’entité est dupliquée dans cette table où elle devient une clé externe qui peut être une valeur nulle. Les éventuelles propriétés de l’association deviennent des attributs de la table. EST Fès Modélisation des Systèmes d’information 10 Associations réflexives 2 Table issue d’une association réflexive (*,n)-(*,n): – (0,n)-(0,n) – (1,n)-(1,n) – (1,n)-0,n) EST Fès Une table ayant comme clé une clé composée de 2 fois l’identifiant de l’entité est créée. Les éventuelles propriétés de l’association deviennent des attributs de la table. Modélisation des Systèmes d’information 11 Exemple 1 CLIENT N° Client Nom Prénom Date_naissance Entité du MCD EST Fès CLIENT (N° client, Nom, Prénom, Date_naissance) TABLE RELATIONNELLE formalisme de Codd Modélisation des Systèmes d’information 12 Exemple 2 Association binaire (*,*)-(*,1): CLIENT COMMANDE N°Client 1,n Nom Prénom Date_naissance Passer 1,1 N°Cmde Date_ Cmde CLIENT (N°Client, Nom,Prénom, Date_naissance) COMMANDE (N°Cmde, Date_Cmde, N°Client) EST Fès Modélisation des Systèmes d’information 13 Exemple 3 Association binaire (*,n)-(*,n): PRODUIT N°Produit Libellé Prix COMMANDE 0,n Concerner Quantité 1,n N°Cmde Date_ Cmde PRODUIT (N°Produit, Libellé, Prix) COMMANDE (N°Cmde, Date_Cmde) CONCERNER (N°Produit,N°Cmde, Quantité) EST Fès Modélisation des Systèmes d’information 14 Exemple 4 Association réflexive (0,n)-(0,1): PERSONNE N°Employé Nom Prénom Date_naissance 0,n est chef de hiérarchie 0,1 est subordonné de PERSONNE (N° Employé, Nom, Prénom, Date_naissance, N° Chef) EST Fès Modélisation des Systèmes d’information 15 Exemple 5 Association réflexive (*,n)-(*,n): PERSONNE N°Employé Nom Prénom Date_naissance 0,n est chef de hiérarchie 0,n est subordonné de PERSONNE (N° Employé, Nom, Prénom, Date_naissance) HIERARCHIE (N° Employé, N° Employé_chef) EST Fès Modélisation des Systèmes d’information 16 Exemple 6 Site N° Site Association ternaire: 0,n Article N°Article Libellé article 0,n Fabriquer Qté à fabriquer 1,n Ordre fabrication N°OF Date OF Site (N° Site) Article (N° Article, Libellé_article) Ordre_fabrication (N°OF, Date_OF) Fabriquer (N° Site, N° Article,N°OF, Qté_à_fabriquer) EST Fès Modélisation des Systèmes d’information 17