modelisation base de données
DESCRIPTION
jnjkTRANSCRIPT
![Page 1: modelisation base de données](https://reader035.vdocuments.site/reader035/viewer/2022081718/557201eb4979599169a29e2a/html5/thumbnails/1.jpg)
Bases de données
Modélisation
14
![Page 2: modelisation base de données](https://reader035.vdocuments.site/reader035/viewer/2022081718/557201eb4979599169a29e2a/html5/thumbnails/2.jpg)
Qu’es un modèle?
Représentation schématique du monde réelReprésentation schématique du monde réel
15
![Page 3: modelisation base de données](https://reader035.vdocuments.site/reader035/viewer/2022081718/557201eb4979599169a29e2a/html5/thumbnails/3.jpg)
Définition d’une BD
I f ti Informations Stocker sur un support Doté d’une organisationg
16
![Page 4: modelisation base de données](https://reader035.vdocuments.site/reader035/viewer/2022081718/557201eb4979599169a29e2a/html5/thumbnails/4.jpg)
Conception d’une base de données
1. Les entités
Représentation d’un ensemble d’objets qui ont des caractéristiques communes
CLIENT ARTICLEcommande
modélisation
CLIENT ARTICLE
17
![Page 5: modelisation base de données](https://reader035.vdocuments.site/reader035/viewer/2022081718/557201eb4979599169a29e2a/html5/thumbnails/5.jpg)
Conception d’une base de données
2. Les attributs
Caractéristiques particulières communes à une entité
CLIENT ARTICLEcommande
CLIENT ARTICLEmodélisation
CLIENTNom
PrénomAd
ARTICLECode
Désignation
18
Adresse
![Page 6: modelisation base de données](https://reader035.vdocuments.site/reader035/viewer/2022081718/557201eb4979599169a29e2a/html5/thumbnails/6.jpg)
Conception d’une base de données
3. Les associations
Lien entre les entités -- ACTIONSCLIENT
NomPrénomAdresse CommandeAdresse
ARTICLE
CommandeDate
Id C+Id AARTICLE
CodeDésignation
19
![Page 7: modelisation base de données](https://reader035.vdocuments.site/reader035/viewer/2022081718/557201eb4979599169a29e2a/html5/thumbnails/7.jpg)
Conception d’une base de données
4. Les cardinalités Nombre minimum et maximum de relations liant 2 ou plusieurs objets
CLIENTCLIENTNom
Prénom
ARTICLECode
Désignation
CommandeDate
Id C+Id A1,N 0,N
Adresse Désignation
20
![Page 8: modelisation base de données](https://reader035.vdocuments.site/reader035/viewer/2022081718/557201eb4979599169a29e2a/html5/thumbnails/8.jpg)
Modèle de Conception de données: MCD
Recherche
21
![Page 9: modelisation base de données](https://reader035.vdocuments.site/reader035/viewer/2022081718/557201eb4979599169a29e2a/html5/thumbnails/9.jpg)
Modèle de Conception de données: MCD
Etapes à suivre
Recherche des entités Définir les attributs Définir la clé primaire Recherche des associations + attributs + clé primaire Cardinalité Cardinalité
22
![Page 10: modelisation base de données](https://reader035.vdocuments.site/reader035/viewer/2022081718/557201eb4979599169a29e2a/html5/thumbnails/10.jpg)
Modèle de Conception de données: MCD
Recherche
InternauteInternauteID I
Pseudo
CoursID CTitre
1,1RechercheId I+Id C
Date0,N
Titre
23
![Page 11: modelisation base de données](https://reader035.vdocuments.site/reader035/viewer/2022081718/557201eb4979599169a29e2a/html5/thumbnails/11.jpg)
MCD: Exemple 1 Un client qui s’inscrit a la bibliothèque verse une caution.Suivant le montant de cette caution, il aura droit d’effectuer enmême temps 10 emprunt a la foisp p Les emprunts durent au maximum 15 jours Un livre est caractérisé par son numéro dans la bibliothèque(identifiant), son titre, son éditeur, et son (ses) auteur (s).(identifiant), son titre, son éditeur, et son (ses) auteur (s). On veut pouvoir obtenir, pour chaque client les emprunts qu’ila effectués (nombre, numéro et titre du livre, date del’emprunt).p ) Toutes les semaines, on édite la liste des emprunteurs enretard: nom et adresse du client, date de l’emprunt, numéro(s)et titre du (des) livre (s) concerné (s)( ) ( ) ( ) On veut enfin pouvoir connaitre pour chaque livre sa dated’achat et son état
24
![Page 12: modelisation base de données](https://reader035.vdocuments.site/reader035/viewer/2022081718/557201eb4979599169a29e2a/html5/thumbnails/12.jpg)
MCD: Exemple 1
1. Dans le texte, identifier les entités ayant une existence propre1. Dans le texte, identifier les entités ayant une existence propre2. Parmi eux, trouver ceux ayant un intérêt pour au moins un
traitement de l’application.3 D’après le texte trouver les attributs des types d’entités3. D après le texte, trouver les attributs des types d entités4. Découvrir les types d’associations permettant de lier les types
d’entités.
25
![Page 13: modelisation base de données](https://reader035.vdocuments.site/reader035/viewer/2022081718/557201eb4979599169a29e2a/html5/thumbnails/13.jpg)
MCD: Exemple 1
AuteurXLIVRE
Bibliothèque??
XX
Editeur
Bibliothèque
?XX
Client
?
?X?
26
![Page 14: modelisation base de données](https://reader035.vdocuments.site/reader035/viewer/2022081718/557201eb4979599169a29e2a/html5/thumbnails/14.jpg)
MCD: Exemple 1 Un client qui s’inscrit a la bibliothèque verse une caution.Suivant le montant de cette caution, il aura droit d’effectuer enmême temps 10 emprunt a la foisp p Les emprunts durent au maximum 15 jours Un livre est caractérisé par son numéro dans la bibliothèque(identifiant), son titre, son éditeur, et son (ses) auteur (s).(identifiant), son titre, son éditeur, et son (ses) auteur (s). On veut pouvoir obtenir, pour chaque client les emprunts qu’ila effectués (nombre, numéro et titre du livre, date del’emprunt).p ) Toutes les semaines, on édite la liste des emprunteurs enretard: nom et adresse du client, date de l’emprunt, numéro(s)et titre du (des) livre (s) concerné (s)( ) ( ) ( ) On veut enfin pouvoir connaitre pour chaque livre sa dated’achat et son état
27
![Page 15: modelisation base de données](https://reader035.vdocuments.site/reader035/viewer/2022081718/557201eb4979599169a29e2a/html5/thumbnails/15.jpg)
MCD: Exemple 1 Un client qui s’inscrit a la bibliothèque verse une caution.Suivant le montant de cette caution, il aura droit d’effectuer enmême temps 10 emprunt a la foisp p Les emprunts durent au maximum 15 jours Un livre est caractérisé par son numéro dans la bibliothèque(identifiant), son titre, son éditeur, et son (ses) auteur (s).(identifiant), son titre, son éditeur, et son (ses) auteur (s). On veut pouvoir obtenir, pour chaque client les emprunts qu’ila effectués (nombre, numéro et titre du livre, date del’emprunt).p ) Toutes les semaines, on édite la liste des emprunteurs enretard: nom et adresse du client, date de l’emprunt, numéro(s)et titre du (des) livre (s) concerné (s)( ) ( ) ( ) On veut enfin pouvoir connaitre pour chaque livre sa dated’achat et son état
28
![Page 16: modelisation base de données](https://reader035.vdocuments.site/reader035/viewer/2022081718/557201eb4979599169a29e2a/html5/thumbnails/16.jpg)
MCD: Exemple 1 Un client qui s’inscrit a la bibliothèque verse une caution.Suivant le montant de cette caution, il aura droit d’effectuer enmême temps 10 emprunt a la foisp p Les emprunts durent au maximum 15 jours Un livre est caractérisé par son numéro dans la bibliothèque(identifiant), son titre, son éditeur, et son (ses) auteur (s).(identifiant), son titre, son éditeur, et son (ses) auteur (s). On veut pouvoir obtenir, pour chaque client les emprunts qu’ila effectués (nombre, numéro et titre du livre, date del’emprunt).p ) Toutes les semaines, on édite la liste des emprunteurs enretard: nom et adresse du client, date de l’emprunt, numéro(s)et titre du (des) livre (s) concerné (s)( ) ( ) ( ) On veut enfin pouvoir connaitre pour chaque livre sa dated’achat et son état
29
![Page 17: modelisation base de données](https://reader035.vdocuments.site/reader035/viewer/2022081718/557201eb4979599169a29e2a/html5/thumbnails/17.jpg)
MCD: Exemple 1
Client
LivreID LTitreEmpreinte
ID CNom
Adresse
TitreEditeurAuteur
D t d’ h t
0,10Date d’empruntDate de retour
0,1
Caution Date d’achatEtat
Date de retour
30
![Page 18: modelisation base de données](https://reader035.vdocuments.site/reader035/viewer/2022081718/557201eb4979599169a29e2a/html5/thumbnails/18.jpg)
MCD: Exemple 2
Dans ce problème on modélise les données et pour représenterl’information sur les villes, les pays, et les consulats:, p y ,
Pour chaque ville : son nom et son nombre d’habitants Pour chaque pays : son nom et le nom du chef d’´etat Pour chaque pays : son nom et le nom du chef d etat Pour chaque consulat : son nom, son adresse, et le nom deconsulat
O é t é l t l f it i tOn représente également les faits suivants :
Dans quel pays est située une ville.q p yQuelle est la capitale de chaque pays.Un consulat représente quel pays et dans quelle ville.
31
![Page 19: modelisation base de données](https://reader035.vdocuments.site/reader035/viewer/2022081718/557201eb4979599169a29e2a/html5/thumbnails/19.jpg)
MCD: Exemple 2
32
![Page 20: modelisation base de données](https://reader035.vdocuments.site/reader035/viewer/2022081718/557201eb4979599169a29e2a/html5/thumbnails/20.jpg)
MCD: Exemple 3Créez le MCD d’une base de données voiture qui enregistre lescertificats d’immatriculation des véhicules en circulation (cartegrise)grise).
Elle doit répondre aux contraintes suivantes :U éhi l t d’ dèl d é id tifié é d Un véhicule est d’un modèle donné identifié par un numéro de
type. Un véhicule peut avoir un ou plusieurs propriétairesi lt é t ( iété)simultanément (copropriété). Les recherches effectuées sur la base doivent permettre deretrouver, par exemple, tous les véhicules d’une personne, laou les personnes propriétaires d’un véhicule dont on connaîtl’immatriculation et tous les propriétaires d’un modèle devoiture donné
33
voiture donné.
![Page 21: modelisation base de données](https://reader035.vdocuments.site/reader035/viewer/2022081718/557201eb4979599169a29e2a/html5/thumbnails/21.jpg)
MCD: Exemple 3Cardinalités :
Un propriétaire peut avoir une ou plusieurs voitures : pourUn propriétaire peut avoir une ou plusieurs voitures : pourl’association possède la cardinalité du côté de l’entité propriétaireest donc 1.N.
Une voiture peut être la propriété d’une ou plusieurs personnes :pour l’association possède la cardinalité du côté de l’entité voitureest donc 1.N
Une voiture est d’un seul modèle : pour l’association est dumodèle la cardinalité du coté de l’entité voiture est donc 1.1modèle la cardinalité du coté de l entité voiture est donc 1.1
A un modèle peuvent correspondirent une ou plusieurs voiturespour l’association est du modèle la cardinalité du côté de l’entité
34
pour l association est du modèle la cardinalité du côté de l entitémodèle est donc 1.N.
![Page 22: modelisation base de données](https://reader035.vdocuments.site/reader035/viewer/2022081718/557201eb4979599169a29e2a/html5/thumbnails/22.jpg)
MCD: Exemple 3
35
![Page 23: modelisation base de données](https://reader035.vdocuments.site/reader035/viewer/2022081718/557201eb4979599169a29e2a/html5/thumbnails/23.jpg)
Modélisation des données
4 étapes nécessaires pour traduireun système d'information naturel enune base de données:une base de données:
36
![Page 24: modelisation base de données](https://reader035.vdocuments.site/reader035/viewer/2022081718/557201eb4979599169a29e2a/html5/thumbnails/24.jpg)
Modèle Logique de données: MLD
Un MLD est essentiellement composé de tables logiques reliées entre elles par des flèches.p
Auteur LivreAuteurIDAteur
Nom
LivreID LTitre
Ecrire1,n1,1
MCD
37
![Page 25: modelisation base de données](https://reader035.vdocuments.site/reader035/viewer/2022081718/557201eb4979599169a29e2a/html5/thumbnails/25.jpg)
Modèle Logique de données: MLD
C t t ' t d it tité d MCD d l MLD1. Comment est-ce qu'on traduit une entité du MCD dans le MLD2. Comment est-ce qu'on traduit un attribut du MCD dans le MLD3. Comment est-ce qu'on traduit un clé primaire du MCD dans le MLDq p4. Comment est-ce qu'on traduit l'association écrire du MCD dans le
MLD?5. Où peut-on retrouver les cardinalités dans le MLD
38
p
![Page 26: modelisation base de données](https://reader035.vdocuments.site/reader035/viewer/2022081718/557201eb4979599169a29e2a/html5/thumbnails/26.jpg)
Model MLD: Règles de transformation
Règle N° 1: Transformation des entités
Les entités deviennent des tables Représentation visuelle semblable au MCD
CLIENT
39
![Page 27: modelisation base de données](https://reader035.vdocuments.site/reader035/viewer/2022081718/557201eb4979599169a29e2a/html5/thumbnails/27.jpg)
Model MLD: Règles de transformation
Règle N° 2
Les identifiants des entités deviennent les clés primaires destables
Les clés primaires sont identifiées par les lettres PK (PrimaryKey) et elles sont soulignées
Comme l’identifiant, la clé primaire est la première colonne dela table
CLIENTPK NoClient
40
![Page 28: modelisation base de données](https://reader035.vdocuments.site/reader035/viewer/2022081718/557201eb4979599169a29e2a/html5/thumbnails/28.jpg)
Model MLD: Règles de transformationRègle N° 3
Les attributs des entités deviennent les colonnes des tables Si ça n’a pas déjà été fait dans le MCD, pensez à décomposer, si nécessaire, les attributs qui ne sont pas d’un type de base
Adresse Rue, Province, Ville, CodePostal Nom Prénom, Nom CLIENT
PK NoClient
PrenomNomRueP iProvinceVilleCodePostal
41
![Page 29: modelisation base de données](https://reader035.vdocuments.site/reader035/viewer/2022081718/557201eb4979599169a29e2a/html5/thumbnails/29.jpg)
Model MLD: Règles de transformationRègle N° 4
Les relations de type un à un (1:1) deviennent des clés étrangères Foreign Key (FK)étrangères Foreign Key (FK)
CitoyenNoCitoyen
CANDIDATNoCandidat1,1 1,1EstNoAssSociale
NomNoTel
AgeSexe
Est
NoTel Devient
Citoyen CANDIDATPK NoCitoyen
NoAssSocialeNom
PK,FK1 NoCandidatAgeSexe
42
oNoTel
Sexe
![Page 30: modelisation base de données](https://reader035.vdocuments.site/reader035/viewer/2022081718/557201eb4979599169a29e2a/html5/thumbnails/30.jpg)
Model MLD: Règles de transformationRègle N° 5
Les relations de type un à plusieurs (1:N) deviennent des clés yp p ( )étrangères
Une des deux tables reçoit comme clé étrangère la clé Une des deux tables reçoit, comme clé étrangère, la clé primaire de l’autre table
La table qui contient la clé étrangère est celle La table qui contient la clé étrangère est celle Pour laquelle la clé étrangère ne reçoit qu’une seule Valeur Qui correspond à l’entité dont la cardinalité maximum est Qui correspond à l entité dont la cardinalité maximum est1 (cardinalité 0, 1 ou 1, 1)
43
![Page 31: modelisation base de données](https://reader035.vdocuments.site/reader035/viewer/2022081718/557201eb4979599169a29e2a/html5/thumbnails/31.jpg)
Model MLD: Règles de transformation
La pointe de la flèche est dirigée vers la table qui fournit Règle N° 5
p g qla clé étrangère à l’autre table
CLIENTNoClient FACTURE
NoFacture1,n 1,1ReçoitPrenomNomNoTel
NoFactureDate
Reçoit
NoTel Devient
CLIENT FACTUREPK NoClient
PrenomNom
PK NoFacture
FK1 DateNoClient
44
oNoTel
NoClient
![Page 32: modelisation base de données](https://reader035.vdocuments.site/reader035/viewer/2022081718/557201eb4979599169a29e2a/html5/thumbnails/32.jpg)
Model MLD: Règles de transformationRègle N° 6
Les relations de type plusieurs à plusieurs (N:M) deviennent des tables supplémentairesdes tables supplémentaires
Le nom de cette nouvelle table peut être la combinaison des noms des de tables d’originedes noms des deux tables d’origine
CLIENT achète PRODUIT � PROD_CLIENT Si possible, trouver un nom plus représentatif: PROD ACHETEPROD_ACHETE
La clé primaire d’une table supplémentaire est composée des clés primaires de chacune des tables à l’origine de la
l tirelation
Les attributs de la relation deviennent des colonnes
45
de la nouvelle table
![Page 33: modelisation base de données](https://reader035.vdocuments.site/reader035/viewer/2022081718/557201eb4979599169a29e2a/html5/thumbnails/33.jpg)
Model MLD: Règles de transformationRègle N° 6
46
![Page 34: modelisation base de données](https://reader035.vdocuments.site/reader035/viewer/2022081718/557201eb4979599169a29e2a/html5/thumbnails/34.jpg)
Model MLD: Exercice 1
47