Post on 03-Feb-2018
PréambuleLe modèle MCD
MLD et MPDExercice
Notions sur la modélisation et la création d’une base dedonnées.
D. Puthier1
1ERM206/Technologies Avancées pour le Génome et la Clinique,http://tagc.univ-mrs.fr/staff/Puthier,
puthier@tagc.univ-mrs.fr
ESIL, 2009
D. Puthier UNIX/Linux
PréambuleLe modèle MCD
MLD et MPDExercice
Définition
L’analyse des données: étape essentielle dans la conceptiond’applications liées à un SGBDR
Le modèle entité-association: technique d’analyse permettant deconstruire un schéma de bases de données relationnelles.
La méthode Merise a été proposée par Hubert Tardieu dans les années1970.
Méthode d’analyse, de conception et de réalisation de systèmesd’information informatisés.
Approche utilisée dans le développement de base de donnéesrelationnelles.
Son utilisation permet d’économiser du temps de conception (on codeaprès reflexion...).
D. Puthier UNIX/Linux
PréambuleLe modèle MCD
MLD et MPDExercice
Les entitésLes associationsCardinalités des associationsClef d’une entité
Le Modèle Conceptuel des Données (MCD)
Il met en jeu des d’entités et des associations (entity/relationship enanglais).
L’entité: un objet d’intérêt dans le problème qu’on cherche à modéliser (ex:client, facture, gene, protéine, expérience,...). C’est un regroupementd’informations.Chaque entité comporte des attributs (ou propriétés) c’est à dire descaractéristiques (date de naissance, couleur, nom, capitale, population,superficie, ...).Il peut exister 0 à n occurrences d’une entité (ex: plusieurs occurences del’entité villes)
D. Puthier UNIX/Linux
PréambuleLe modèle MCD
MLD et MPDExercice
Les entitésLes associationsCardinalités des associationsClef d’une entité
Typages des attributs
Les attributs peuvent avoir des types permettant de mieux les décrires:
D DateAn Caractères de longueur nBL BooléenT TempsDT Date TempsN NombreS Smallint (entier court)I Integer entier
D. Puthier UNIX/Linux
PréambuleLe modèle MCD
MLD et MPDExercice
Les entitésLes associationsCardinalités des associationsClef d’une entité
Les associations
Elles permettent de définir des relations sémantiques entre entités.
D. Puthier UNIX/Linux
PréambuleLe modèle MCD
MLD et MPDExercice
Les entitésLes associationsCardinalités des associationsClef d’une entité
Cardinalités des associations
La cardinalité indique le nombre minimum (0 ou 1) et maximum (1 ou n)de fois où l’occurrence d’une entité peut participer à une associationLe schéma suivant indique que:
une être humain réside dans 1..1 appartementun appartement est occupé par 0..n être(s) humain(s).un être humain possède 0..n appartement(s).
D. Puthier UNIX/Linux
PréambuleLe modèle MCD
MLD et MPDExercice
Les entitésLes associationsCardinalités des associationsClef d’une entité
Clef d’une entité
Une clef est utilisée pour discriminer sans ambiguité les occurences(exemple: le numéro de commande, le numéro de client,...).
Cette clef devra répondre au critère d’unicité, de concision (préférer lenumérique), et de stabilité (l’identifiant ne doit pas changer tous lesjours...).Dans certain cas, le choix est naturel
Immatriculation pour une automobile, Code postal pour une ville, numérode sécurité sociale pour un patient,...
Dans d’autre cas il faudraUtiliser une combinaison d’attributs pour définir une clef composée (exDate de naissance-nom-prénom).Utilisé une clef “artificielle” spécifique à la BD (Ex: un numéro client).De manière générale il faut mieux préférer un clef numérique artificielle àune clef naturelle composée.
D. Puthier UNIX/Linux
PréambuleLe modèle MCD
MLD et MPDExercice
Les entitésLes associationsCardinalités des associationsClef d’une entité
Clef d’une entité
De manière générale, on préfèrera les clefs numériques aux clefsaphabétiques et aphanumériques car celles-ci occupent moins d’espace etsont plus rapides à trier.
D. Puthier UNIX/Linux
PréambuleLe modèle MCD
MLD et MPDExercice
MLD et MPD
Le MCD visait à conceptualiser l’application.
Le MLD (Modèle Logique de Données) vise à traduire le MCD en tablesutilisables par un SGBD.
L’intérêt de la méthode Merise est de proposer des règles simples pourfaciliter la transformation MCD -> MLD.
Le MPD (Modèle hysique de Données) est un autre raffinement qui vise àproduire un MLD pour un SGBD spécifique.
D. Puthier UNIX/Linux
PréambuleLe modèle MCD
MLD et MPDExercice
Les règles .
1 A chaque entité correspond une table.
2 Si la relation est de type 1:1, les entités ont la même clef.
3 Dans le cas d’une relation 1:n, la clef de l’entité côté 0,n/1,n migre vers latable côté 0,1/1,1 et devient une clef étrangère (Foreign Key).
4 Dans le cas d’une association n:m entre une table A et une table B, unenouvelle table C est créée. Dans C, les clefs primaires de A et B sont desclefs étrangères.
5 Une liste plus exhaustive des règles est disponible à l’adresse suivante:http://www.sam-mag.com/P53,53,5,43„,default.aspx
D. Puthier UNIX/Linux
PréambuleLe modèle MCD
MLD et MPDExercice
Exercice. Modéliser une base de données “Hygiène et sécurité” permettantd’effectuer le suivi de l’exposition des chercheurs aux produits chimiques.
1 Les utilisateurs (nom, prénom) utilisent des produits chimiques au sein delaboratoires (adresse).
2 Il existe pour chaque produit (idCAS, désignation, autresDésignations) des“Phrases de risque” et des “Phases de prudence“.
3 On stocke pour chaque utilisations les données suivantes: utilisateur,laboratoire, produit, date de début, date de fin.
D. Puthier UNIX/Linux
PréambuleLe modèle MCD
MLD et MPDExercice
Exemple: MCD (réalisé avec AnalyseSI).
D. Puthier UNIX/Linux