Vous êtes sur la page 1sur 43

BASES DE DONNES RELATIONNELLES:

MODLE DE DONNES

Abdelouahed Sabri - 2013/2014

MODLE DE DONNES

Un modle de donnes (Ang: data model) est une description structure et formelle des donnes et de leurs relations dans un SI (Systme dInformation):

Le modle de donnes est une abstraction du monde rel.

3 tapes pour la construction dun modle de donnes:


1. 2. 3.

Analyse des donnes et de leurs relations, Dfinition des ensembles dentits et de liens, Conception du schma de la base de donnes relationnelle.

MODLE DE DONNES

Exemple trait:

Une entreprise qui, pour grer ses projets informatiques,


doit rassembler des informations sur ses employs, sur ses projets et ses dpartements.

L'entreprise devra construire un modle de donnes o


seront dfinies les classes de donnes requises (catgories de donnes) et leurs dpendances.

MODLE DE DONNES:
1- ANALYSE DES DONNES

Cette tape vise :

Dterminer, en collaboration avec les employs et responsables, les donnes ncessaires un systme d'information, Dterminer les relations entre ces donnes, Dterminer la structure des ensembles qui en rsultent.

Cette tape est effectue utilisant des interviews, l'analyse des besoins, des questionnaires, des formulaires,

Le rsultat est une documentation complte.


4

MODLE DE DONNES:
1- ANALYSE DES DONNES

Rsultat:

But

Pour le contrle des projets, chaque dpartement doit enregistrer priodiquement des donnes sur ses employs, les cots et les dures des projets

1. Chaque employ est affect un seul dpartement. 2. Un numro unique est attribu chaque projet de manire centralise. 3. Un employ peut travailler sur plusieurs projets simultanment. Le degr de sa participation un projet s'exprime en pour-cent. 4.

MODLE DE DONNES:
2- DFINITION DES ENSEMBLES DENTITS ET DE LIENS
Cette tape vise concevoir un modle entitassociation (Ang: entity relationship model) o l'on dfinit les ensembles d'entits et les ensembles de liens entre ces entits. Utilisation du graphique:

Les ensembles d'entits sont graphiquement par des rectangles,


Dpartement Employ

reprsents
Projets

Les ensembles de liens par des losanges.


Affectation Appartenance
6

MODLE DE DONNES:
2- DFINITION DES ENSEMBLES DENTITS ET DE LIENS

Modle entit-association:

Dpartement

Les employs sont affects aux dpartement


Liens

Affectation

Employ

Entits

Les employs travaillent sur des projets

Appartenance

Projets

MODLE DE DONNES:
3- CONCEPTION

DU SCHMA DE LA BASE

Convertir le modle entit-association en un schma de base de donnes relationnelle


Dfinir

un schma de base de donnes == fournir une

description formelle des objets dans la base de donnes.


Exprimer

tout les ensembles d'entits et de liens sous forme

de tables.

Chaque tables entit contient obligatoirement les cls des


ensembles d'entits participant la liaison considre, appeles cls trangres ainsi que dautres attributs qui caractrisent cette

liaison.

MODLE DE DONNES:
3- CONCEPTION
1.
Dpartement

DU SCHMA DE LA BASE

Trois schma (graphiques) possibles:


Botes rectangulaires: utilises dans MCD:
AFFECTATION EMPLOY APPARTENANCE PROJET DPARTEMENT

N Dpart
Description

N Dpart
N Emp

N Emp
Nom Rue

N EMP
N Projet % Participation

N Proj
Contenu

Affectation

Ville

Employ

2. 3.

Tableau sur une ligne: Tableau sur une ligne:


DPARTEMENT (N Dpart, Description) AFFECTATION (N Dpart, N Emp)

Appartenance

9 Projets

LE MODLE ENTIT-ASSOCIATION
ENTIT

On dfinit une entit comme tant un objet spcifique:

une personne, un objet, un vnement,

Dans le cas des entits de mme type on parle densemble d'entits qui sont caractrises par un certain nombre d'attributs.

Ensemble dentits: Employs.

Les attributs: Nom, ge, grade, rue, ville .


10

LE MODLE ENTIT-ASSOCIATION
ENTIT

Cls didentification:

Une cl dindentification est dfinit pour chaque ensemble d'entits, Une cl est forme dun attribut ou dune combinaison d'attributs,

Contrainte de combinaison minimale des attributs.

Une cl permet de distinguer chaque entit de manire unique dans l'ensemble considr

Contrainte dunicit.

11

LE MODLE ENTIT-ASSOCIATION
ENTIT

Exemple (1/2):

Pour faire une gestion interne de ces projets, une entreprise doit rassembler les informations de ces employs en crant un

ensemble d'entits appel EMPLOYE


Donner trois attributs, Prciser la cl didentification.

12

LE MODLE ENTIT-ASSOCIATION
ENTIT

Exemple (2/2):

Les attributs sont: Nom, Rue et Ville.

La cl didentification est lattribut artificiel: Numro demploy Les entits sont les employs Lensemble dentits est le personnel

13

LE MODLE ENTIT-ASSOCIATION
ASSOCIATION

Normalement, il existe des diffrents ensemble dentits.

liaisons

entre

Exemple:

Ces liaisons forment eux aussi un ensemble, De mme, les ensembles de liaisons on chacun leurs propres attributs Dpartement
Affectation Employ Appartenance

Ensemble de liaison Appartenance:

Projets Un employ peut participer plusieurs projets, Un projet est ralis par plusieurs employs. les liaisons dfinissent des associations dans les deux directions

14

LE MODLE ENTIT-ASSOCIATION
ASSOCIATION
Une association d'un ensemble d'entits un deuxime ensemble d'entits dfinit un lien orient dans cette direction Exemple: On considre la liaison Chef de projet entre les entits Dpartement et Employ:

Nous avons deux associations:

Dpartement

Dans chaque dpartement un seul employ occupe le poste de directeur,

CHEF de dpartement

Affectation

Plusieurs employs exercent la fonction de chef de dpartement, chacun dans un dpartement.

Employ

15

LE MODLE ENTIT-ASSOCIATION
ASSOCIATION: LES TYPES DASSOCIATIONS

On considre une association entre deux ensembles dentits: EE_1 et EE_2.

Lassociation de EE_1 EE_2 est caractrise par un TYPE

On dfinit le type dassociation de EE_1 EE_2 comme tant le nombre d'entits provenant de EE_2 qui sont relies une entit dans EE_1.

On dfinit 4 types dassociations possibles:


Simple, Conditionnelle, Multiple, Multiple conditionnelle.

16

LE MODLE ENTIT-ASSOCIATION
ASSOCIATION: LES TYPES DASSOCIATIONS

Association simple ou bien de type 1 :

chaque entit dans EE_1 correspond une et une seule entit dans EE_2

Exemple: l'association AFFECTATION des employs aux dpartements est de type simple (type 1)

Car chaque employ est affect un seul dpartement


Dpartement

CHEF de dpartement

Affectation

Employ

17

LE MODLE ENTIT-ASSOCIATION
ASSOCIATION: LES TYPES DASSOCIATIONS

Association conditionnelle ou bien de type c :

chaque entit dans EE_1 correspond au plus une entit (cest--dire zro ou une seule entit) dans EE_2.

Exemple: Lassociation CHEF DE DEPARTEMENT des employs aux dpartements est de type conditionnelle (type c):

Un employ peut tre (et pas forcement) un chef de dpartement. Dpartement


CHEF de dpartement
Affectation

Employ

18

LE MODLE ENTIT-ASSOCIATION
ASSOCIATION: LES TYPES DASSOCIATIONS

Association multiple ou bien de type m

chaque entit dans EE_1 correspondent une ou plusieurs entits EE_2.

Exemple: Le lien dAppartenance des projets aux employs est de type multiple (type m):

chaque projet est ralis par au moins un ou plusieurs employs.


1
CHEF de dpartement
Dpartement

m
Affectation

1
Employ

Appartenance

Projets

19

LE MODLE ENTIT-ASSOCIATION
ASSOCIATION: LES TYPES DASSOCIATIONS

Association conditionnelle complexe ou bien de type mc chaque entit dans EE_1 correspondent aucune, une ou plusieurs entits dans EE_2. La diffrence entre le type mc et le type m est que chaque entit dans EE_1 nest pas forcment relie aux entits dans EE_2. Exemple: Le lien dAppartenance des employs aux projets est de type multiple (type mc):
1
Dpartement

CHEF de dpartement

Affectation

Employ

mc

Appartenance

Projets
20

On peut avoir un employ qui ne participe aucun projet, et quun employ peut contribuer plusieurs projets la fois.

LE MODLE ENTIT-ASSOCIATION
ASSOCIATION: LES TYPES DASSOCIATIONS

Degr de liaisons:

Le degr dune liaison est dtermin par les types dassociations ( 1 liaison 2 associations), Le degr dune liaison entre deux ensembles dentits sexprime par la paire de types dassociations qui la composent.

Degr de liaison entre EE_1 et EE2:


Degr = (Type d'association de EE_1 EE_2, Type d'association de EE_2 EE_1)

Exemple : Degr de la liaison APPARTENANCE entre EMPLOYE et PROJET = (mc,m)


La paire de types d'associations, note (mc,m), signifie que le lien APPARTENANCE est complexe - multiple. 21

DE LENTIT-ASSOCIATION VERS LE RELATIONNEL

Un schma (Modle Conceptuel des Donnes) entitassociation peut tre traduit instinctivement en un schma relationnel

Il existe certaines rgles, NB: Il existe des logiciels qui permettent cette traduction automatiquement (WinDesign, BD_Designer )

22

DE LENTIT-ASSOCIATION VERS LE RELATIONNEL

Exemple (MCD):
PASSER

Client NumCli#

0,N

1,1

COMMAN DE NumCom# Date

1,N

Concerner

ARTICLE

Qte

0,N

NumArt# Desc PrixU

Nom Adresse

1,1
OBTENIR

0,N
REGION NonReg# REPRESENTANT

0,N

PROSPECTER

1,N

23

NumRep# Adresse

nbreHabitant

DE LENTIT-ASSOCIATION VERS LE RELATIONNEL

Exemple (Suite):

Rgle1: Les entits deviennent des relations (ou tables),


L'identifiant de l'entit devient la cl de la relation, Les proprits de l'entit deviennent des attributs.

CLIENT NumCli# Nom Adresse

COMMANDE
NumCom# Date

ARTCILE

REPRESENTANT

NumArt# REGION
NonReg#

Desc

PrixU

NumRep#

Adresse

nbreHabitant

24

DE LENTIT-ASSOCIATION VERS LE RELATIONNEL

Exemple (Suite):

Rgle2:
Dans le cas dune cardinalit 1,1 (1) on ajoute lidentifiant cible la relation source comme tant cl trangre

CLIENT
NumCli# Nom Adresse

ARTCILE NumArt# Desc PrixU

COMMANDE NumCom# Date NumRep# NumCli#

REPRESENTANT NumRep# Adresse

REGION NonReg# nbreHabitant

25

DE LENTIT-ASSOCIATION VERS LE RELATIONNEL

Exemple (Suite):

Rgle3:

mc)) devient une relation part entire dont la cl est la concatnation des deux identifiants des entits concernes et dont les attributs sont les proprits (si elles existent) de l'association. On obtient donc les relations supplmentaires suivantes :
CLIENT
NumCli# Nom Adresse

Une association de la forme X,N -------Y,N ( (mc,m), (m,m), (mc,

ARTICLE
NumArt# Desc PrixU

COMMANDE NumCom# Date NumRep# REGION NonReg# nbreHabitant NumCli#

REPRESENTANT
NumRep# Adresse

26
PROSPECTER NonReg# NumRep# CONCERNER NumCom# NumArt# Qte

Exercice:
La Bibliothque d'un syndicat intercommunal consiste en 5 centres de prt. Ces centres disposent d'ordinateurs personnels interconnects qui doivent permettre de grer les emprunts.
L'interview des bibliothcaires a permis de dterminer les faits suivants: une personne qui s'inscrit la bibliothque verse une caution. Suivant le montant de cette caution elle aura le droit d'effectuer en mme temps de 1 10 emprunts; les emprunts durent au maximum 15 jours; un livre est caractris par son numro dans la bibliothque (identifiant), son titre, son diteur et son (ses) auteur(s); on veut pouvoir obtenir, pour chaque abonn les emprunts qu'il a effectu (nombre, numro et titre du livre, date de l'emprunt) au cours des trois derniers mois; toutes les semaines, on dite la liste des emprunteurs en retard : nom et adresse de labonn, date de l'emprunt, numro(s) et titre du (des) livre(s) concern(s); on veut enfin pouvoir connatre pour chaque livre sa date d'achat, son tat et s'il est disponible dans quel centre.

Avant de donner le schma de la base de donnes :


1.

2.

Proposer des diagrammes entit-association qui modlisent 27 le cas ci-dessus. Prciser en langage naturel les contraintes d'intgrit.

LE MODLE

ENTIT-ASSOCIATION

Exercice (suite):
1re tape: Extraire les entits et les ensembles de liens
Entits:
Livre Abonn

Lien

Emprunt

28

LE MODLE

ENTIT-ASSOCIATION

Exercice (suite):
2m tape: Crer le modle Entit-Association
Liaison Livre ----> Emprunt ----> Abonn : Un livre peut tre emprunt par aucun, un seul ou plusieurs abonn Liaison de type m Liaison Abonn -----> Emprunt ------> Livre: Un Abonn peut emprunter aucun, un seul ou plusieurs livres (max 10) Liaison de type mc

Livre

mc

Emprunt

mc

Abonn

29

LE MODLE ENTIT-ASSOCIATION

LIVRE Nl# Titre Auteur Dte Achat tat diteur EMPRUNT Nl# IDa# Dte_Emp Dte_Rtr

Exercice (suite):

3me tape: Identifier les attributs


ABONN IDa# Nom Prnom CIN Adresse Caution

Contraintes dintgrit:
Pour chaque emprunt, la date de retour doit tre suprieure la date demprunt, La date dachat du livre doit tre infrieure la date demprunt, 30 Le mme livre ne doit pas exister deux fois, Un abonn ne doit pas avoir deux identifiants.

LE MODLE ENTIT-ASSOCIATION

Exercice (suite):

Equivalent en MCD:

LIVRE

ABONN

Nl#
Titre Auteur Dte Achat tat diteur

EMPRUNT

0,N

Dte_Emp Dte_Rtr

IDa#

0,10

Nom Prnom CIN Adresse Caution

31

Exercice:

Un diteur souhaite installer une base de donnes pour mmoriser les informations suivantes:
Les livres sont identifis par leur numro ISBN (International Standard Book Number). Un livre possde un titre et un prix de vente. Il est crit par un ou plusieurs auteurs. Chaque livre est tir en une ou plusieurs ditions, dates et identifies par leur ordre (premire dition, seconde dition, etc.). Chaque dition comporte un certain nombre d'exemplaires. Le prix de vente peut changer d'une dition l'autre. Un livre peut tre prim (Goncourt, Fmina, etc.). Les auteurs sont identifis par leur nom et prnoms et peuvent avoir un pseudonyme. Pour chaque livre, un auteur peroit des droits d'auteur annuels, calculs comme un pourcentage des ventes (il est aussi fonction du nombre d'auteurs). Les libraires (identifis par leur nom et adresse complte) commandent des livres en prcisant ldition et le nombre dexemplaires dsir.

1. 2.

Proposer des diagrammes entit-association qui modlisent le cas ci-dessus. 32 Prciser en langage naturel les contraintes d'intgrit.

LE MODLE

ENTIT-ASSOCIATION

Exercice (suite):
1re tape: Extraire les entits et les ensembles de liens
Entits:
Auteur Livre Edition Libraire

Lien

Droit

Tirage

Commande

33

LE MODLE

ENTIT-ASSOCIATION

Exercice (suite): 2m tape: Crer le modle Entit-Association

Auteur

mc
Droit

m
Livre

mc

Tirage

Liaison Auteur----> Droit---> Livre: Un Auteur peut avoir le droit dauteurs sur un ou plusieurs Livres. Il y a aussi quun auteur na pas le droit sur aucun Livre. Liaison de type mc. Liaison Livre-----> Droit------> Auteur: Tout livre est Droit dauteur par au moine un Auteur. Liaison de type m. Liaison Livre-----> Tirage----> dition: Chaque livre est tir en une ou plusieurs ditions. Liaison de type m. Liaison dition ----> Tirage----> Livre: Une Edition doit tre tire au moins un livre . Liaison de type m. Liaison dition ----> Commande---> Librairie: Les livres dune Edition peuvent tre commands par une librairie . Liaison de type mc. Liaison Librairie ----> Commande---> dition: Les librairies doivent commander leur livres dau moins une Edition. Liaison de type m.
34
Librairie

m
dition

mc

Commande

LE MODLE ENTIT-ASSOCIATION

Exercice (suite):

Equivalent en MCD:
DROIT LIVRE EDITION Anne Montant
TIRAGE

AUTEUR Na# Nom

0,N

1,N

N_ISBN#

0,N

1,N

Numro#

Prnom
pseudo

Titre Prix

anne nb_Exempl aire


COMMANDE

LIBRAIRIE Nom# Adresse

0,N

1,N

Qt Date

35

LE MODLE ENTIT-ASSOCIATION

AUTEUR Na# Nom Prnom pseudo

Exercice (suite):

3me tape: Identifier les attributs


LIVRE N_ISBN# Titre Prix EDITION Numro# anne nb_Exempl aire LIBRAIRIE Nom# Adresse

DROIT Na# N_ISBN# Anne Montant

TIRAGE N_ISBN# Numro#

COMMANDE Numro# Nom# Qt Date

36

LE MODLE ENTIT-ASSOCIATION

Exercice (suite): Contraintes dintgrit:


Pour chaque Edition, le nombre dexemplaire doit tre suprieur ou gal la somme des quantit des occurrences de Commande qui lui sont lies. Pour chaque Commande, la date doit tre suprieur la date de lEdition

37

LE MODLE ENTIT-ASSOCIATION

Exercice : Gestion des stages des tudiants allant en entreprise. On cherche dvelopper une application pour la gestion des stages de fin dtudes des tudiants. Ainsi, on veut conserver pour chaque promotion :

Les informations sur le stage, Les informations sur lencadrant dans lentreprise, Les informations sur lencadrant dans lcole, La date, lheure et la salle de la soutenance, Les notes obtenues.

1.

2.

Proposer des diagrammes entit-association qui modlisent le cas ci-dessus. 38 Prciser en langage naturel les contraintes d'intgrit.

LE MODLE ENTIT-ASSOCIATION

Exercice (suite) : Gestion des stages des tudiants allant en entreprise.

Les entits envisageables sont :

39

LE MODLE ENTIT-ASSOCIATION

Exercice (suite) :

Modle entit-association

On a suppos ici qu'un tudiant peut effectuer plusieurs stages, qu'il est suivi par plusieurs responsables en gnral (universitaires ou d'entreprise).

40

LE MODLE ENTIT-ASSOCIATION

Exercice 6:

On considre le modle suivant

1. 2.

Donner le rsultat de lanalyse des donnes qui a permet dobtenir le modle ci-dessus. Donner le schma relationnel quivalent.

41

LE MODLE ENTIT-ASSOCIATION

Exercice (suite): Agence de locations de voitures.

On veut mettre la disposition des employs le fichier des vhicules de location (leurs principales caractristiques : numro minralogique, carte grise, puissance, km, dates des vidanges et des entretiens en gnral ainsi que les pannes). Ce fichier sera reli un autre fichier concernant les clients : non prnom, adresse, numros de tlphone etc. fin de conserver l'ensemble des rservations effectues.
42

LE MODLE ENTIT-ASSOCIATION

Exercice (suite):

Rgle 1 : les entits deviennent des relations : CLIENT(numC, nomC, pnomC, adC, telC) VEHICULE (num, marque, type, ----) VIDANGE (numV, dateV, natureV) ENTRETIEN (numE, dateE, natureE) REPARATION (numR, dateR, natureR) Rgle 2 : traitement des cardinalits 1,1

VIDANGE (numV, dateV, natureV, #num) ENTRETIEN (numE, dateE, natureE, #num) REPARATION (numR, dateR, natureR, #num)

Rgle 3 : traitement des associations x,n--y,n

On a donc en dfinitive le schma suivant

LOCATION (#num, #numC, dateD, dateF, kmD, kmF)

CLIENT(numC, nomC, pnomC, adC, telC) VEHICULE (num, marque, type, ----) VIDANGE (numV, dateV, natureV, #num) ENTRETIEN (numE, dateE, natureE, #num) REPARATION (numR, dateR, natureR, #num) LOCATION (#num, #numC, dateD, dateF, kmD, kmF)

43