Sunteți pe pagina 1din 77

1

Plan
Introduction
Introduction sur les systmes dinformation et base de donnes
MCD : Entit-Association
MLD : Le modle relationnel
- Dfinition
- concepts
- Rgles de traduction : passage de E-A vers le relationnel
- Dpendances entre donnes et formes normale
- Algbre relationnel
SQL : Structured Query Language
2

Systme dinformation (SI)

Dfinition :
Ensemble organiss de ressources (humains, matriels, )
et de procdure ou mthodes permettant dacqurir, stocker,
traiter et diffuser linformation dans une organisation
Les moyens humains : ensemble des personnes (les utilisateurs, les dcideurs ) qui
reoivent, manipulent et mettent de l'information
Moyens matriels : ensemble doutils (photocopieurs, ordinateurs, logiciels,
tlcommunication ) permettant de recevoir, manipuler et mettre
de l'information
Les mthodes : ensemble doutils de travail et des rgles permettant de rsoudre
les problmes de gestion.
3

Systme dinformation
Le SI permet de
- collecter des informations
- stocker et mmoriser les informations
fichiers, base de donnes
- exploiter les informations :
interroger, modifier, produire de nouvelles info, analyser
- Diffuser l'information :
mettre, dans un temps utile, linformation disposition
de ceux qui en ont besoin, et sous une forme directement
exploitable afin d'assurer leurs activits.
Le SI assure la circulation des informations destination du
systme de dcision et du systme oprant
utilisation de divers support pour la diffusion : mail, support
papier, orale, applications web,
4

Systme dinformation

Buts des SI :
- Amliorer la productivit
- Assister dans la mise en uvre de la stratgie de lentreprise
Exemple dorganisation
- vente de produit par un grossiste
== > produit achet auprs dun fournisseur et vendu
des clients

Systme dinformation

Objectif de lautomatisation des SI :


Restituer, aux diffrents membres de lentreprise, les informations
sous une forme directement utilisable ; au moment opportun, afin
de faciliter le bon fonctionnement oprationnel et la prise de
dcision aux diffrents niveaux

Systme informatique

Une partie du SI peut tre informatise


Ce systme informatis prend appuis sur un systme informatique
compos de matriel et de logiciels de base
SI

Systme informatis
Systme
informatique

Stockage
Stockage de donnes indispensables
- Fichiers
- Base de donnes

Environnement bass sur des fichiers

Principes
Stockage des donnes dans des fichiers sur les disques
applications manipulent des simples fichiers

Manipulation
des fichiers

Trop lourd est limit

On doit connaitre lorganisation de


linformation dans ces fichiers
crire le programme manipulant ces
donnes
cration de nouveaux fichier la
cration dune application
== > redondance
Risque d'incohrence des donnes
Pas d'indpendance entre les donnes
et les traitements
.

Dfinition BD
Qui ce quune base de donne ?
- Une base de donnes (BD), est une entit dans laquelle il
est possible de stocker des donnes de faon structure et
avec le moins de redondance possible.
- Ces donnes sont dcrites selon un certain modle
- Ces donnes doivent pouvoir tre utilises par
des programmes, par des utilisateurs diffrents.
- Le contenu de la base est interrogeables et
modifiables par un groupe d'utilisateurs travaillant
en parallle
- Les donnes stock dans la base de donnes modlisent des objets du
monde rel, ou des association entre objets.
Exemple : Un magasin avec ses articles. Les articles sont les
donnes du monde rel.

10

Utilisations

Les bases de donnes sont couramment utiliss :


- Gestion de rservation de billets, d'achat sur internet,
- Gestion d'emploi du temps, gestion du personnels,
- Gestion des hpitaux

11

Contexte technique des BD

Principe des BD :
Stockage persistant sur disque
Trs gros volumes de donnes
manipulation de donnes : utilisation de langage de
requtes et langages de programmation SGBD
Contexte multi-utilisateurs

12

Dfinition de SGBD

Qui ce quun Systme de Gestion de Base de Donnes (SGBD) ?

Systme logiciel permettant linteraction et gestion des donnes


dune BD, selon un modle fix.

Cest l'interface entre la base de


donnes et les utilisateurs ou leurs
programmes
13

Types de bases de donnes


Il existe plusieures types de bases de donnes selon le modle de donnes utilis:
- BD Hirarchiques (modle hirarchique) : premier SGBD fonde sur un
classement hirarchique des donnes et selon une arborescente descendante.
- BD rseau (le modle rseau) : utilise des pointeurs vers des enregistrements.
La structure n'est plus forcment arborescente dans le sens descendant comme
cest le cas du modle hirarchique.
- BD Relationnelles (modle relationnel
SGBDR ): organisation des donnes
sous forme de tables et exploitation laide dun langage dclaratif
Ex de SGBDR : Oracle, mySQL, Access
- BD Objets (modle objet SGBD0): organisation des donnes sous forme
dinstances de classes hirarchises qui possdent leur propres mthodes
dexploitation.

14

Quelques SGBD

Les SGBD commerciaux les plus connus sont Oracle, Sybase,


Ingres, Informix, Access et DB2
Le SGBD qui gre une BDD relationnelle est appel "SGBD
relationnel", abrg en SGBDR.
Dans ce cours on sintresse au SGBD relationnelle

15

Les objectifs du SGBD/BD

Le couple SGBD/BD doit atteindre les objectifs suivants :


Bonne reprsentation du monde rel : La BD doit fournir une
image fiable de la ralit avec des informations toujours fiable et
jour
Efficacit et facilit d accs aux donnes :
- Le SGBD doit fournir des outils puissants et conviviaux
permettant aux utilisateurs :
*) La manipulation des donnes (ajout, modifications,
suppression des informations)
- La consultation des donnes et le traitement des informations
obtenues (slectionner, trier, calculer, agrger,...)

16

Les objectifs du SGBD/BD

Administration des donnes :


- Ladministrateur gres les aspects du SGBD qui ne sont pas
automatiss et doivent demeurer transparent aux utilisateur
*) dcider des structure physique et des stratgies
daccs
*) dfinir les autorisations accordes aux utilisateurs
*) dfinir des points de reprise et de de sauvegarde
*) optimiser lorganisation physique des donnes

17

Les objectifs du SGBD/BD


Partageabilit des donnes :
- permettre plusieurs utilisateurs d'accder aux mmes
donnes au mme moment.
- modification des donnes
- assurer un rsultat d'interrogation cohrent pour un utilisateur
consultant une table pendant qu'un autre la modifie.
Cohrence des donnes : Dfinition des rgles pour maintenir la
cohrence == > mise en place de contraintes dintgrit qui
dfinissent un tat cohrent des donnes
le systme assure un mcanisme de vrification :
si lensemble des contraintes est vrifi, la mise
jour est accept et effectue dans la base, sinon la mise
jour est rejet
Avant mise
jour
tat cohrent

aprs mise
jour
tat cohrent

18

Les objectifs du SGBD/BD


Nom redondance des donnes :
Linformation doit tre unique tant dans sa description que dans
son stockage (afin d'viter, entre autre, les problmes lors des
mises jour, chaque donne ne doit tre prsente qu'une seule
fois dans la base).
Scurit et confidentialit des donnes :
Linformation doit tre protge contre le vol, la dgradation,
perte, et les accs non autoriss
La gestion des droit daccs mcanisme offert par SGBD
Rsistance aux pannes :
Apres une panne ou abondons de traitement la SGBD doit tablir
les donnes dans un tat cohrent
Prvoir des procdures de reprise en cas d'incident
(sauvegardes, journaux,...)
19

Les acteurs

Trois types dacteurs autour de BD et SGBD :


- lutilisateur : gnralement non spcialiste, celui-ci peut
consulter les donnes
- dveloppeur dapplications : crit des application autour
du SGBD == > il doit connaitre certaines caractristique
technique du SGBD
- ladministrateur de la BD : soccupe de la BD (conception,
maintenance, volution, optimisation des accs, )

20

Tches de l'administrateur de base de donnes

Planification et cration de bases


Gestion de la disponibilit des bases
Gestion des structures physiques et logiques
Gestion du stockage en fonction de la conception
Gestion de la scurit
Sauvegarde et rcupration
Rglage des bases

21

Terminologie :
Manipulation et restitution des donnes
Permet
Insertion : saisir des donnes
Supprimer : suppression de donnes
modifier : modification des donnes
Interroger : rechercher des donnes en utilisant des requtes (SQL)
La manipulation des donnes est mise en uvre l aide d un
Langage de Manipulation de Donnes (LMD) :
SQL (Structured Query Language) est le Langage standard de
manipulation de BD

22

Terminologie :
Contrainte dintgrit et mtabase

23

Structuration de donns

Dans un SGBD, les donnes sont organises selon un modle


appel modle de donnes
Il existe plusieurs type de modles. Chacun est bas sur un
type de constructeur utilis pour organiser les donnes. Parmi
les modles utiliss:

24

Terminologie : Modle de donnes & Schma

Cette description va donner lieu un schma de base


de donnes.
Un schma de base de donnes est la description des
donnes grer et de leurs relations ainsi que d'un
ensemble de contraintes conformment un modle.
>> Il est conu dans la phase de spcification
Le modle de donnes le plus utilis est le modle relationnel
le modle relationnel == > Schma relationnel

Base de donnes relationnelle

25

Niveaux de description des donnes


Spcification de la
structure et les types de
donnes de lapplication

- L ide centrale des BD : sparation de la


description des donnes effectu par ladministrateur
et
de la manipulation des donnes effectues par les applications

interrogation, insertion et
mises jours des donnes

Lune des objectifs majeur des SGBD est de prsenter lutilisateur les
donnes sous forme abstraite :
Le systme masque certains aspects concernant le
stockage et la mise jour des donnes
et facilite lutilisation des ces donnes

26

Niveaux de description des donnes


- La conception dune BD ncessite de considrer et de spcifier les trois
niveaux ANSI/SPARC
Monde
- Proposition en 1975
rel
Utilisateur
(applications,
)

Niveau
externe

Schma
externe 1

Niveau
conceptuel

Schma
externe 2

Schma
externe n

Schma
conceptuel

Spcification
et analyse

Schma
externe
5- vues
MLD :
Schma
logique

1- Conception

2- Traduction

MCD

3- Implantation
Niveau
interne

Schma
interne

Architecture ANSI/SPARC

Schma
physique
4- stockage
BD

Conception : Reproduire le
monde rel laide dun
modle de donnes
conduisant un schma
conceptuel crit dans
un formalisme
quelconque.
27

Niveaux de description des donnes


Niveau conceptuel :
Description des objets et la description de leurs proprits (les liens et les
relations qui existent entre elles) , sans soucis d'implmentation physique ni de la
faon dont chaque groupe de travail voudra s'en servir. On appelle cette description
le schma conceptuel.
objets : exemple personne, voiture
des proprits des objets (attributs) : exemple nom,
prnom, ge, matricule etc.
des liens entre les objets : une Personne possde une voiture
des Contraintes : lge dune personne est suprieur zro
description des donnes sera effectue en utilisant un modle de
donnes
- un SGBD spare la partie description des donnes, des donnes

elles mmes. Cette description est stocke dans un dictionnaire de


donnes (galement gr dans le SGBD) et peut tre consulte par les
utilisateurs
28

Niveaux de description des donnes

Niveau externe (vue):


Description pour chaque utilisateur (ou un groupe dutilisateurs) de sa perception
des donnes. On appelle cette description le schma externe ou vue.
Le concept de vue permet de ne montrer lutilisateur quune portion de la base
de donnes
Niveau interne ( physique)
- Description informatique des donnes et de leur organisation : en terme de
fichiers, d index, de mthodes daccs,
-Identifie la faon selon laquelle sont stockes les donnes et les mthodes pour y
accder
- On appelle cette description le schma interne

29

Un peu d'histoire
1960 : systmes de gestion de fichiers plus ou moins sophistiqus.
1970 : Dbut des systmes de gestion de bases de donnes rseaux et
hirarchiques proches des systmes de gestion de fichiers.
On ne pouvait pas interroger une base sans savoir o tait
l'information recherche (on "naviguait") et sans crire de
programmes.
- Sortie du papier de CODD sur la thorie des relations, fondement
de la thorie des bases de donnes relationnelles.
1980 : Les systmes de gestion de bases de donnes relationnels
apparaissent sur le march.
1990 : Les systmes de gestion de bases de donnes relationnels
dominent le march.
Dbut des systmes de gestion de bases de donnes orients
objet.

30

Objectif
Notre objectif principal :
* Concevoir une base de donnes relationnel
Adoption dune mthode de conception et danalyse :
- UML
- MERISE
* Mise en place de la base et manipulation des donnes

31

Pour quoi passer par la phase de conception? (1)


Objectif :

Monde
rel

tables

Exemple : Conception et mise en place de la base de donnes dune


bibliothque ou gestion des films :
Comment ?
Mise en place directement de stables ?
nous ne savons pas toujours dans quelle table placer certaines colonnes (par exemple,
ladresse de livraison se met dans la table des clients ou dans la table des commandes ?) ;
nous avons du mal prvoir les tables de jonction intermdiaires (par exemple, la table
des interprtations qui est indispensable entre les tables des films et la table des acteurs

== > risque d incohrence


= > ncessit dune mthode de conception
salaris

ralisateur
Livres
films

Etudiant

Empreint

acteurs
32

Pour quoi passer par la phase de conception? (2)


Un mauvais exemple :
Soit une table stockant des films avec quelques informations de base :

Problmes et dfauts :
- risque de redondances
- Anomalies possibles lors de linsertion :
- Qui distingue un film dun autre ? 2 films peuvent-il avoir le
mme titre ?
- peut-on avoir des noms de ralisateur identiques ?
- quand on peut dire que la mme information est rpte ?

33

Pour quoi passer par la phase de conception? (3)

- Erreurs possibles lors de la mise--jour :


Si lon modifie, par exemple, lanne de naissance
dHitchcock pour Vertigo et pas pour la ligne
Psychose ?
== > informations incohrentes
- problme lors de suppression
Si destruction dun film, on risque de supprimer le metteur
34
en scne

Pour quoi passer par la phase de conception? (4)

Pour une conception efficace, on a recoure une mthode de


conception :
La conception est la tche la plus ardue du processus de dveloppent
dun SI
Les mthodes de conceptions, telle Merise, prconisent une
dmarche par tapes et font appel des modles pour reprsenter
les objets qui composent le SI et les relation qui existent entre ces
objet

salaris
Etudiant

Livres
Empreint

ralisateur
films

acteurs
35

Etapes de conception dune BD relationnel


Le processus de modlisation se dcoupe en trois tapes principales
correspondant la description de la future BD trois niveaux
dabstraction :
- schma conceptuel :
MCD : Modle entit-Association
- schma logique : rsultat de la traduction du schma conceptuel
en un schma propre un type de BD
notre cible : SGBD relationnelles
== > utilisation modle relationnel
- schma physique : Limplmentation physique du modle logique
de donnes

36

Dmarche
0 - Observation de la ralit
Collecte dinformations

Indpendant
de tout
logiciel

1 Modlisation des informations :


Modlisation conceptuel de donnes (MCD)
Mthodologie
modle entit-association (E-A) == > obtention dun
Passage de E-A
schma entits-associations
au relationnel
2 schma logique : gnration des relations
de la BD relationnelle partir
du schma entits-associations, par une dmarche
systmatique et simple
obtention dun schma relationnel
Obtenir une reprsentation correcte de la ralit
Pouvoir faire voluer facilement la reprsentation

Utilisation du
modle
relationnel

37

Cycle de vie dune BD

38

Plan
Introduction
Introduction sur les systmes dinformation et base de donnes
MCD : Entit-Association
MLD : Le modle relationnel
- Dfinition
- concepts
- Rgles de traduction : passage de E-A vers le relationnel
- Dpendances entre donnes et formes normale
- Algbre relationnel
SQL : Structured Query Language
39

Modle Entits-Associations

Objectif : modliser le systme dont on veut stocker les donnes (la


problmatique traiter) dun point de vue conceptuel et indpendamment
du logiciel utilis.

- Modlisation utilis : Entit Association (EA)


== > conduit llaboration dun schma trs rpondu :
Schma Entit Association

40

Modle Entits-Associations
Propos en 1976 (Chen)
Il est la base de la plupart des mthodes de conception (MCD Merise, )

Avantages :
Simple
Graphique
Facilite le dialogue avec les utilisateurs
==> Modle de conception de donnes

41

Modle Entits-Associations
Retour l exemple prcdent :

La bonne mthode consiste :


Reprsenter individuellement les films et les ralisateurs : entit
entit films

entit ralisateur

== > Une modification de lun nentrane pas une modification de lautre


Dfinir une mthode d identification des films ou des ralisateurs
== > La mme information est reprsente une seule fois
Prserver le lien entre films et ralisateurs , mais sans introduire de redondance :
association
42

Modle Entits-Associations

Objectifs
Etudier et reprsenter dune manire structure les
donnes dun systme (une entreprise)
Description gnrale
Entit
Association
Attribut

43

Entit (1)

LENTITE : Reprsentation dun ensemble dobjets concrtes ou abstraites


ayant les mmes attributs et appartenant au monde tudi.
== > Une entit et ces attributs ne doivent traiter quun seul sujet
Reprsentation graphique
- Caractristiques
NOM DENTITE
Un nom unique
Attribut1
Un ou plusieurs attributs
Attribut2
Chaque individu dune entit doit tre
Attribut3
identifier dune manire unique
Attribut4
== > identifiant
Films
occurrence

Alien
1979

occurrence = instanciation dune entit

44

Entit (2)
Identifiant dune entit:
Objectif : chaque occurrence doit pouvoir tre repre de manire
unique et sans ambigut, pour tre distingue de toutes les autres
Identifiant :
- Attributs ou groupe dattributs qui permet de reprer une
occurrence de manire unique. On souligne lidentifiant.
- On privilgie lidentifiant le plus court, le plus naturel (nbon
de commande, code client, n tudiant,)
- On peut crer un identifiant artificiels
- Identifiant non variable dans le temps.

45

Entit (3)
Exemple 1 : les films peuvent tre regroups dans une mme
entit films. Alors que les ralisateurs sous une entit
ralisateur:
entit films

entit ralisateur

identifiant
mais si
homonymes ?

attributs

46

Entit (3)
entit ralisateur

entit films

Lien ?

Progrs :
- il n'y a plus de redondance dans la base de donnes
- il n ya plus danomalies de mise jour

lien ?

Le lien entre films et ralisateur ?


== > notion dassociation

47

Entit (4)
Exemple 2 : Une entreprise qui vents des articles .
== > les clients de lentreprise peuvent tre regroups dans une
mme entit clients. Alors que les articles vendus sous une entit
articles :
!! les articles et les clients ne peuvent pas tre regroups car les
informations ne sont pas homognes. Il faut donc leurs rserv 2
entits diffrentes : clients et articles

Le lien entre clients et articles ?

== > notion dassociation

48

Association (1)
Chaque entit entretient un certain nombre de liens avec
dautres entits : ces liens sont appels des associations.
Dfinition : une association est une liaison, qui a une
significations, entre plusieurs entits
exemple : commander est une liaison entre clients et articles
commander est une association

Association de 2 entits
clients

articles

Code_client
nom
prnom
Adresse

Id_article
dsignation
prix

attribut

Commander
quantit

Nom de lassociation
49

Association (2)

Ralise

50

Association (3)

Caractristiques
Une association comporte 4 caractristiques essentielles :
Un nom unique (verbe),
Un ou plusieurs attributs,
1, 2, ou plus de 2 entits concernes,
2 ou plus de 2 occurrences concernes.

51

Association (4)

Types dassociations :
- Binaire
- Association plurielle
- Association rflexive
- Association n-aire (n>2)

52

Association binaire
Association entre deux entits diffrentes

Association binaire

Exemple :
Ralise

53

Association n-aire
dsigne une association qui lient n entits.

Exemple : association ternaire

projeter

tarif

54

Association rflexive
Association entre une entit avec elle mme
Exemple :

le dirigeant

Association rflexive

Salari
matricule
nom
prnom
fonction

Diriger

le dirig

Concepts de base :
Lassociation dune entit
vers elle mme doit porter sur
des occurrences diffrentes
salari
24
Nill
Olvier

salari
Diriger

320
Dupond
Jean

55

Association plurielle
dsigne des associations diffrentes qui relient les
mmes entits

Exemple :

Association plurielle

crit

Auteur

Livre

Num
Nom

cote
titre

critique
56

Cardinalit dune association (1)


Dfinition : La cardinalit dun lien entre une entit est une
association prcise le nombre de participation dune
entit une association : Elle prcise le minimum et
maximum de fois quun individu dune entit peut tre
concern par lassociation.
== > Compte le nombre de fois (min et max) o une
occurrence de lentit peut se retrouver engage
dans lassociation
Cardinalit dune association : min , max :

57

Cardinalit dune association (2)

Les cardinalits dune association prcisent 2 lments:


Quand une association existe-t-elle?
Combien de fois, au maximum, peut-elle se rpter pour
une mme entit?

58

Cardinalit dune association (2)

La rponse ces questions sont donnes respectivement par les


cardinalits minimum et maximum :

*) La cardinalit minimum peut prendre deux valeurs : 0 ou 1


0 : lentit peut ne pas participer (tre engage) lassociation
1 : lentit doit participer (doit tre engage au) moins une fois
*) La cardinalit maximum peut prendre deux valeurs : 1 ou n
1 : lentit participe (est engage) au plus une fois lassociation
n : lentit peut participer plusieurs fois lassociation
Valeurs possibles :
0,1 1,1
0,n

1, n

59

Cardinalit dune association (2)

E1

E2

E1

0,1

1,1

E1

Assoc.

0,N

1,N

1,1

E2

E2

Assoc.

Assoc.

1,1

E1

E2

Assoc.

1,1
0,N
60

Cardinalit dune association (3)


Difficult : se poser la question dans le bon sens
Exemple : autour de lassociation commander

clients

articles

Code_client
nom
prnom
Adresse

Id_article
dsignation
prix

Commander
quantit

Questions :
- cot entit clients : combien darticle peut commander un client ?
- cot articles : un article peut tre commander par combien de clients?
== > Les cardinalits doivent toujours tre analyses du point de vue de
lentit la quelle elles sont associes
61

Cardinalit dune association (5)


Rponse :
Un client a au moins command un article et peut command n articles.
Un article peut avoir t command entre 0 et n fois (un article peut
tre command par 0 n clients)
on obtient le schma entit-association complet :
clients
Code_client
nom
prnom
Adresse

articles

,n

Commander
quantit

0,n

Id_article
dsignation
prix

La cardinalit minimal de 1 doit se justifier par le fait que les individus de lentit
en question ont besoin de lassociation pour exister.
Dans notre exemple un client nexiste pas avant davoir commander un article
== > cardinalit min de 1
Remarque : la discussion autour de la cardinalit min 0 ou 1 na de sens que
lorsque la cardinalit max est de 1
62

Cardinalit dune association (6)


Ralise

1,1

1,n

- En indiquant ici qu'un film est ralis par un seul metteur en scne
== > cest un choix !!
On va voir plus loin (passage entit-association au relationnel) :

63

Cardinalit dune association (7)


Exercice : positionnez les cardinalits et commentez ce schma

1,1

appartient

0,n

dateAchat

Rponse :

64

Cardinalit dune association (7)

Exercice : Positionnez les cardinalit avec justification

Employs
Diriger

num_employ
Nom
Prnom
Fonction

crit

Auteur

Livre

Num
Nom

cote
titre

critique
65

Entit remplaable par une association


Si autours dune entit, les associations ont pour cardinalit max 1 au centre
et n lextrieur == > cette entit peut tre remplace par une association

1,n
1,1
A
b

1,1

1,1

1,n

Lentit A est
transforme en
association A

1,n
A
b

1,n

1,n

1,n

66

Entit remplaable par une association


Exemple :

Crneau
numCrneau
Date
Heure dbut

0,n
lieu pendant
Crneau
numCrneau
Date
Heure dbut

1,1
projection
numProj
tarif

1,1

1,1

concerne

0,n

Film
numFilm
Titre
dure

quivalence

Projeter

Lentit projection est


transforme en

lieu dans

association projeter

0,n

0,n

Salle
numSalle
capacit

Film

0,n

numFilm
Titre
dure

tarif

0,n
Salle
numSalle
capacit
67

Entit faible
On parle dentit faible si cette dernire ne peut exister qu'en
troite association avec une autre, et est identifie
relativement cette autre entit.
exemple : cinma et ces salles. Un cinma est composs de
plusieurs salles. Une salle appartient un cinma.

E1

(1,1)

-,n

E2

68

Quelques Rgles doptimisation


Normalisation des attributs des associations:
Les attributs dune association doivent dpendre directement
des identifiants de toutes les entits en association
Normalisation des association :
Eliminer les association fantme
Normalisation des identifiant :
chaque entit doit avoir un identifiant
- viter au mieux les identifiant composs, longues
susceptible de changer au cours du temps

69

Dpendance fonctionnel
Dfinition : un attribut Y dpend fonctionnellement dun attribut X
ssi une valeur de X induit une et unique valeur de Y.
Notation : X Y
exemple : numClient nomClinet
par contre :
nomClient numClient
car on peut avoir plusieurs client de mme nom mais de
numClient diffrents
-

Toutes les attributs dune entit doivent tre en dpendance


fonctionnelle directe avec lidentifiant de cette Entit

70

Dpendance fonctionnel
Exemple 1 : relation client

CLIENT

numClient

nom
prnom
adresse

NumClient
Nom
Prnom
Adresse

numClient

( nom , prnom , adresse )

Toutes les Proprits dune Entit sont en dpendance fonctionnelle directe


avec la proprit identifiant de cette Entit
71

Dpendance fonctionnel
Y
X == > X Y
type,marque type
U

1 - Rflexivit :
exemple e:

2 - Augmentation :
X Y => X , Z
Y, Z
si X dtermine Y, les deux ensemble dattributs peuvent tre enrichis
par un mme troisime
exemple :
numVoiture couleur
numVoiture,marque couleur, marque
3 Union :
4 - Projectivit :

Y et X
X

Z => X

Y,Z

5 - Transitivit :

Y et Y

6 - Pseudo-transitivit :

Y et WY

=> X

Y,Z
Y et X

Z => X
Z => WX

Z
Z

72

Dpendance fonctionnel
- Cas dune association 1,1 1,n

CLIENT

COMMANDE
N Commande

PASSER

1,1

0,N

Nom

Date Commande

Adresse

Montant

N Commande

Code Client

DF reprsentant lassoc.

Code Client

Nom
Adresse

Date Commande

Montant

Tlphone

Remarque : La DF Code Client ---> NCommande


nexiste pas car un Client peut passer plusieurs
Commandes 4 )

Toutes les Proprits dune Entit sont en dpendance fonctionnelle directe


avec la proprit identifiant de cette Entit
73

Dpendance fonctionnel

Association binaire porteuse

FACTURE

PRODUIT
0,N

N Facture
Date Facture

COMPORTER

1,N
Rf. Produit

Quantit Produit

Prix Unitaire

Montant

( N Facture , Rf. Produit )

Dsignation

DF reprsentant lassoc.

Quantit Produit

74

Formes normales
1ere forme normale : un attribut ne peut prendre quune
valeur et non un ensemble ou liste de valeur
- Si un attribut prends plusieurs valeur == > une nouvelle entit
en association avec la premire
livre
numLivre
Titre
Auteurs

1ere forme
normale

auteurs

Livres
numLivre
Titre

1,n

Ecrit par

1,n

numAuteur
Nom
Prenom
DateNaissance

Entit
supplmentaire
Pour un livre on peut avoir
plusieurs auteurs == > 1ere
forme normale non respecte

75

Formes normales
2 me forme normale :
tre en 1ere forme normale
+ lidentifiant peut tre compos de plusieurs attribut, les autre attributs
de lentit doivent dpondre de la totalit de lidentifiant et non dune
partie.
3 me forme normale :
tous les attributs qui nappartiennent pas lidentifiant de lentit doivent
dpendre directement de son identifiant et daucun autre attribut.
Si ce nest pas le cas : placer lattribut pathologique dans une entit
spare en association avec la premire
Avions
numAvion
Modle
Constructeur
Capacit
propritaire

Avions

Constructeur et capacit
dpendent de Modle

numAvion
propritaire

Modle

1,1

appartient

1,n

numModle
Modle
Constructeur
Capacit
76

Dmarche suivre
- dterminer la liste des entits
- pour chaque entit :
tablir la liste des attributs
parmi ceux-ci dterminer un identifiant
- dterminer les association entre les entits
- pour chaque association :
tablir la liste des attributs,
vrifier la dimension (binaire, ternaire ),
dfinir les cardinalits
- vrifier le schma obtenu
- valider avec les utilisateurs

77

S-ar putea să vă placă și